Files
张翔 08ea5fbe98 feat(admin): 添加用户管理相关文件
添加用户管理视图、API和状态管理文件
2026-03-28 14:37:29 +08:00

88 lines
2.3 KiB
TypeScript

import type { Options } from '@wdio/types';
export const config: Options.Testrunner = {
runner: 'local',
autoCompileOpts: {
autoCompile: true,
tsNodeOpts: {
project: './tsconfig.json',
transpileOnly: true,
},
},
specs: [
'./e2e/mobile/**/*.spec.ts',
],
exclude: [],
maxInstances: 1,
capabilities: [
{
platformName: 'Android',
'appium:automationName': 'UiAutomator2',
'appium:deviceName': 'Android Emulator',
'appium:app': './dist/android/app-debug.apk',
'appium:platformVersion': '13.0',
'appium:appPackage': 'io.dcloud.uniapp',
'appium:appActivity': 'io.dcloud.PandoraEntry',
'appium:noReset': true,
'appium:fullReset': false,
'appium:newCommandTimeout': 60000,
'wdio:appium:appiumVersion': '2.11.3',
},
],
logLevel: 'info',
bail: 0,
waitforTimeout: 10000,
connectionRetryTimeout: 120000,
connectionRetryCount: 3,
services: [
['appium', {
command: 'appium',
args: {
address: '127.0.0.1',
port: 4723,
relaxedSecurity: true,
},
}],
],
framework: 'mocha',
reporters: [
'spec',
['junit', {
outputDir: './test-results/mobile',
outputFileFormat: function(options) {
return `junit-${options.cid}.${options.capabilities}.xml`;
},
}],
['allure', {
outputDir: './test-results/mobile/allure-results',
disableWebdriverStepsReporting: true,
disableWebdriverScreenshotsReporting: false,
}],
],
mochaOpts: {
ui: 'bdd',
timeout: 60000,
retries: 2,
},
before: async function() {
await browser.pause(3000);
},
beforeTest: async function(test) {
console.log(`Starting test: ${test.title}`);
},
afterTest: async function(test, context, { error, result, duration, passed, retries }) {
if (!passed) {
await browser.saveScreenshot(`./test-results/mobile/screenshots/failed-${test.title.replace(/\s+/g, '-')}.png`);
}
},
after: async function() {
await browser.pause(2000);
},
onComplete: function(exitCode, config, capabilities, results) {
console.log(`Test completed with exit code: ${exitCode}`);
console.log(`Total tests: ${results.tests.length}`);
console.log(`Passed: ${results.passed}`);
console.log(`Failed: ${results.failed}`);
},
};