如何解决赛普拉斯:使用标签过滤测试
我有100个测试用例,其中一些属于冒烟,回归或两者兼有。赛普拉斯本身不提供任何标记机制,我该如何过滤测试它们?
我尝试过
- https://www.npmjs.com/package/cypress-select-tests
- https://www.npmjs.com/package/cucumber-tag-expressions
但是他们都没有为我工作。如果有人有这些软件包的工作示例,请进行指导。
还有其他方法可以过滤测试吗?
解决方法
创建一个名为test-filter.ts的模块,该模块基本上根据提供的标签过滤您的赛普拉斯测试。
/// <reference types="Cypress" />
const TestFilter = (definedTags: string[],runTest: Function) => {
if (Cypress.env('TEST_TAGS')) {
const tags = Cypress.env('TEST_TAGS').split(',');
const isFound = definedTags.some(definedTag => tags.includes(definedTag));
if (isFound) {
runTest();
}
}
};
export default TestFilter;
将以上文件导入您的规范文件:
/// <reference types="Cypress" />
import TestFilter from '../../test-filter';
TestFilter(['smoke','test'],() => {
describe('Taboola',() => {
beforeEach(() => {
cy.viewport('macbook-13');
});
it('should exist on an article page',() => {
cy.visit(Cypress.env('TEST_ARTICLE'));
cy.waitForAdRequest();
cy.get('div[data-mode="Feeder"]').should('exist');
cy.get('div[data-mode="alternating-thumbnails-a"]').should('exist');
});
});
});
执行测试的方式为:
CYPRESS_TEST_TAGS=smoke npm run cy:run:local:dev
文章引用- https://www.mariedrake.com/post/using-tags-to-filter-your-cypress-tests
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。