08ea5fbe98
添加用户管理视图、API和状态管理文件
88 lines
2.3 KiB
TypeScript
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}`);
|
|
},
|
|
};
|