是否可以使用Cypress框架来测试颤振应用程序,而不是使用Flutter提供的内置测试组件?如果是这样的话,如果我很了解Cypress,那么颤振测试的利弊是什么?
发布于 2021-09-03 17:23:02
是的,严格来说,这是可能的。
下面是一个规范,它通过了基本的颤振计数器应用程序:
describe('Counter app', () => {
beforeEach(() => {
cy.visit('http://localhost:_example_port_/#/')
cy.get('flt-semantics-placeholder').click({force: true})
})
it('Increments on button press', ()=>{
cy.get(`[aria-label="0"]`)
cy.get(`[aria-label="Increment"]`).click()
cy.get(`[aria-label="1"]`)
})
})为了解释,如果您单击隐藏的‘flt-语义-占位符’元素来启用语义,flutter添加了一个由屏幕阅读器使用的语义层。带有工具提示和文本的小部件被自动分配给咏叹调标签,Cypress可以使用这些标签来查找和单击元素。(您可以使用语义Widget对这些标签进行更多的控制。)
我发现这对于画布呈现器是有效的,但是当我试图在同一次运行中运行多个测试用例时,它就崩溃了。因此,使用html呈现器(运行flutter进行测试,如下所示:
flutter run -d chrome --web-renderer html --web-port 3443 好吧,点击按钮很简单。其他的互动呢?
将文本输入到字段:
相当直截了当。见这个例子。
模拟滚动事件:
总之,目前还没有解决办法。见这次减价。
模拟拖放:
不太可能。见这次减价。
现在是正反两面。
优点:
缺点:
另请参阅:
https://stackoverflow.com/questions/58679661
复制相似问题