You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
57 lines
2.1 KiB
57 lines
2.1 KiB
describe('pages/tabBar/component/component.nvue', () => { |
|
let page |
|
beforeAll(async () => { |
|
// 重新reLaunch至首页,并获取首页page对象(其中 program 是uni-automator自动注入的全局对象) |
|
page = await program.reLaunch('/pages/tabBar/component/component') |
|
await page.waitFor(1000) |
|
}) |
|
|
|
it('u-link', async () => { |
|
// 检测首页u-link的文本内容 |
|
expect(await (await page.$('.hello-link')).text()).toBe( |
|
'https://uniapp.dcloud.io/component/') |
|
}) |
|
|
|
it('视图容器', async () => { |
|
let panelText = await page.$('.uni-panel-text') |
|
// 检测首个 panel 是视图容器 |
|
expect(await panelText.text()).toBe( |
|
'视图容器') |
|
|
|
// 检测首个 panel 切换展开 |
|
const panelH = await page.$('.uni-panel-h'); |
|
// 不能做完全匹配,百度小程序会生成额外的class |
|
expect(await panelH.attribute('class')).toContain('uni-panel-h') |
|
await panelH.tap() |
|
await page.waitFor(500) |
|
// 已展开 |
|
expect(await panelH.attribute('class')).toContain('uni-panel-h-on') |
|
}) |
|
|
|
// it('.uni-panel', async () => { |
|
// const lists = await page.$$('.uni-panel') |
|
// expect(lists.length).toBe(9) |
|
// }) |
|
|
|
it('.uni-panel action', async () => { |
|
const listHead = await page.$('.uni-panel-h') |
|
expect(await listHead.attribute('class')).toContain('uni-panel-h-on') |
|
await listHead.tap() |
|
await page.waitFor(200) |
|
expect(await listHead.attribute('class')).toContain( |
|
'uni-panel-h', |
|
) |
|
|
|
// 展开第一个 panel,点击第一个 item,验证打开的新页面是否正确 |
|
await listHead.tap() |
|
await page.waitFor(200) |
|
const item = await page.$('.uni-navigate-item') |
|
await item.tap() |
|
await page.waitFor(500) |
|
expect((await program.currentPage()).path).toBe('pages/component/view/view') |
|
await page.waitFor(500) |
|
|
|
// 执行 navigateBack 验证是否返回 |
|
expect((await program.navigateBack()).path).toBe('pages/tabBar/component/component') |
|
}) |
|
})
|
|
|