@ appium/ test- support
⚠️ 被否决: 本模块已贬值. 使用 sinon 直接代替(例如, sinon.createSandbox() 与摩诃迦 beforeEach编号 :afterEach 钩子.
Appium 套件使用的测试工具 libs 集合

安装
npm install @appium/test-support --save-dev
使用量
带Sandbox
混合时使用 sinon APIs (博物馆,间谍,分会).
import { withSandbox } from '@appium/test-support';
let api = {
abc: () => { return 'abc'; }
};
describe('MyTest', withSandbox({mocks: {api}}, (S) => {
it('stubbing api, stubbing dog', () => {
S.mocks.api.expects('abc').once().returns('efg');
let dog = { bark: () => { return 'ouaf!'; } };
S.sandbox.stub(dog, 'bark').returns('miaou');
api.abc().should.equal('efg');
dog.bark().should.equal('miaou');
S.verify();
});
}));
带Mocks
当主要使用根茎.
import { withMocks } from '@appium/test-support';
let api = {
abc: () => { return 'abc'; }
};
describe('withMocks', withMocks({api}, (mocks) => {
it('should mock api', () => {
mocks.api.expects('abc').once().returns('efg');
api.abc().should.equal('efg');
mocks.verify();
});
}));
许可证
阿帕奇 - 2.0
关于 @appium/test-support 的常见问题
@appium/test-support 是什么?
整个Appium软件包使用的测试工具集注意:该包已被作者标记为弃用——This module is deprecated. Use sinon directly instead (e.g., sinon.createSandbox() with Mocha hooks).
如何安装 @appium/test-support?
在项目目录运行 npm install @appium/test-support,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 android-emu-travis-pre、android-emu-travis-post,可以用 npx android-emu-travis-pre 直接运行。
@appium/test-support 支持 TypeScript 吗?
支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。
@appium/test-support 需要什么版本的 Node.js?
package.json 的 engines 字段要求 Node.js ^20.19.0 || ^22.12.0 || >=24.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。
@appium/test-support 可以商用吗?
@appium/test-support 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。
@appium/test-support 的下载量有多少?
根据 npm 官方下载统计,@appium/test-support 在 2026/10/07 – 2026/11/05 这 30 天内被下载 4,465 次,日均约 149 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。
@appium/test-support 还在维护吗?
最新版本 4.1.5 发布于 2026/05/31(5 个月前);至今共发布 100 个版本,其中过去 12 个月发布了 10 个;首次发布于 2021/05/27。作者已将其标记为弃用,新项目建议寻找替代方案。