我只想切换运行一个测试,所以我不必等待其他测试才能看到一个测试的结果。
当前,我注释掉了其他测试,但这确实很烦人。
是否有一种方法只能切换在Cypress
中运行一个测试?
答案 0 :(得分:3)
是的,您可以按照the Cypress docs
中的说明使用.only
it.only('only run this one', () => {
})
it('not this one', () => {
})
此外,您可以对describe
和context
块进行相同操作
还有一个不错的VSCode
扩展名,可以通过键盘快捷键轻松添加/删除.only
。称为测试实用程序:
答案 1 :(得分:2)
您可以通过将x
放在testrunner方法调用({{1},describe
等)之前,使不需要的测试套件和特殊情况静音。
所以它看起来像:
it
答案 2 :(得分:1)
有多种方法可以实现这一目标。
.only
添加到it
或describe
中,请参见@bkucera答案npx cypress run --record --spec "cypress/integration/my-spec.js" npm run cypress -- --record --spec "cypress/integration/my-spec.js"
答案 3 :(得分:1)
我发现有一种方法可以跳过不需要运行的测试(在当前测试中),那就是使用:this.skip();
it('test page', function () {
// skip this test for now
this.skip();
cy.visit('http://example.com/')
cy.contains('test page').click()
cy.url()
.should('include', '/test-page/')
})
答案 4 :(得分:0)
您可以像这样运行测试。
cypress运行--spec ** / file.js
答案 5 :(得分:0)
我的测试文件具有这样的结构 path/something.test.jsx
并且命令 npx cypress run --spec path/something.test.jsx
在终端中给出以下异常:
Can't run because no spec files were found.
We searched for any files matching this glob pattern:
...
出人意料的是,下面的工作并完全针对一个文件运行测试(前提是您安装了 jest):
jest path/something.test.jsx
答案 6 :(得分:0)
答案 7 :(得分:-1)
要通过终端运行特定文件:
npx cypress run --record --spec "cypress/integration/my-spec.js"
npm run cypress -- --record --spec "cypress/integration/my-spec.js"
答案 8 :(得分:-2)
你可以使用这个
cypress run -- --spec 'path/to/files/*.spec.js'
或
npm run --spec 'path/to/files/*.spec.js'
它对我有用。
非常感谢