82 lines
2.6 KiB
JavaScript
82 lines
2.6 KiB
JavaScript
const { launchMiniProgram } = require('../helpers/automator');
|
|
const { HomePage } = require('../pages/HomePage');
|
|
const { LoginPage } = require('../pages/LoginPage');
|
|
|
|
describe('小程序冒烟测试', () => {
|
|
let miniProgram;
|
|
let homePage;
|
|
|
|
beforeAll(async () => {
|
|
try {
|
|
miniProgram = await launchMiniProgram();
|
|
homePage = new HomePage(miniProgram);
|
|
} catch (error) {
|
|
console.warn('小程序连接失败:', error.message);
|
|
}
|
|
});
|
|
|
|
afterAll(async () => {});
|
|
|
|
test('小程序首页加载与基本内容', async () => {
|
|
if (!miniProgram) {
|
|
console.log('跳过:小程序环境未就绪');
|
|
return;
|
|
}
|
|
|
|
// 确保在首页 tabbar
|
|
await miniProgram.switchTab('/pages/index/index');
|
|
await new Promise(resolve => setTimeout(resolve, 1500));
|
|
|
|
const page = await miniProgram.currentPage();
|
|
console.log('当前页面路径:', page.path);
|
|
expect(page).toBeDefined();
|
|
expect(page.path).toBeTruthy();
|
|
|
|
// 首页数据验证
|
|
const data = await homePage.getPageData();
|
|
console.log('首页数据:', JSON.stringify(data).substring(0, 200));
|
|
expect(data).toBeDefined();
|
|
});
|
|
|
|
test('TabBar 页面间导航', async () => {
|
|
if (!miniProgram) {
|
|
console.log('跳过:小程序环境未就绪');
|
|
return;
|
|
}
|
|
|
|
// 先确保在首页
|
|
await miniProgram.switchTab('/pages/index/index');
|
|
await new Promise(resolve => setTimeout(resolve, 1000));
|
|
|
|
let page = await miniProgram.currentPage();
|
|
console.log('导航测试 - 首页:', page.path);
|
|
|
|
// 切换到搜索
|
|
await miniProgram.switchTab('/pages/search/search');
|
|
await new Promise(resolve => setTimeout(resolve, 1000));
|
|
page = await miniProgram.currentPage();
|
|
console.log('导航测试 - 搜索:', page.path);
|
|
expect(page.path).toBe('pages/search/search');
|
|
|
|
// 切换到我的课程
|
|
await miniProgram.switchTab('/pages/my-courses/my-courses');
|
|
await new Promise(resolve => setTimeout(resolve, 1000));
|
|
page = await miniProgram.currentPage();
|
|
console.log('导航测试 - 我的课程:', page.path);
|
|
expect(page.path).toBe('pages/my-courses/my-courses');
|
|
|
|
// 切换到个人中心
|
|
await miniProgram.switchTab('/pages/profile/profile');
|
|
await new Promise(resolve => setTimeout(resolve, 1000));
|
|
page = await miniProgram.currentPage();
|
|
console.log('导航测试 - 个人中心:', page.path);
|
|
expect(page.path).toBe('pages/profile/profile');
|
|
|
|
// 返回首页
|
|
await miniProgram.switchTab('/pages/index/index');
|
|
await new Promise(resolve => setTimeout(resolve, 1000));
|
|
page = await miniProgram.currentPage();
|
|
expect(page.path).toBe('pages/index/index');
|
|
});
|
|
});
|