Ash*_*ary 2 css testing rounding-error e2e-testing cypress
假设我div在 DOM 中有一个'200px'宽度为 a 的class元素'target'。
为了用 cypress 测试它的宽度,我应该编写下面的代码:
cy.get('.target').should('have.css', 'width', '200px');
Run Code Online (Sandbox Code Playgroud)
还有一堆测试,测试元素的宽度和高度......
...
今天发生了一件奇怪的事情!
width所有这些测试都失败了,因为发现的柏树的价值200.0000000000032038879956012px不是200px!
我想到的第一个解决方案是用实际数字(ex,)来测试它们,而不是柏树找到的200字符串(ex, );'200px'我认为这是一个昂贵的想法!
你认为我怎样才能克服这个问题!?
无需任何转换即可匹配,
cy.get('div')
.invoke('css', 'width')
.should('match', /200.*px/) // matches 200.0000000000032038879956012px or 200px
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1913 次 |
| 最近记录: |