Testing 文件上传后,testCafe会减慢测试速度
我正在自动化数据捕获表单。 这个表单的第一个元素是图像文件上传控件&我正在上传一个5KB的图像。 但在这一步之后,测试将执行下一步,即将文本写入文本框&然后它将停止近30秒。 如何减少这种不必要的等待Testing 文件上传后,testCafe会减慢测试速度,testing,automation,automated-tests,e2e-testing,testcafe,Testing,Automation,Automated Tests,E2e Testing,Testcafe,我正在自动化数据捕获表单。 这个表单的第一个元素是图像文件上传控件&我正在上传一个5KB的图像。 但在这一步之后,测试将执行下一步,即将文本写入文本框&然后它将停止近30秒。 如何减少这种不必要的等待 test('Test 1', async t => { await listingPage.uploadImage(); await listingPage.listAnItem(); .. 上传图像代码 async uploadImage() { awai
test('Test 1', async t => {
await listingPage.uploadImage();
await listingPage.listAnItem();
..
上传图像代码
async uploadImage() {
await t.setFilesToUpload(this.imageInput, ['../../uploads/photo02.jpg']);
}
{
"browsers": [ "chrome", "safari" ],
"remoteChromeVersion": "80",
"src": "specs",
"reporter": [
{
"name": "spec"
}
],
"speed": 1,
"debugOnFail": false,
"skipJsErrors": true,
"selectorTimeout": 20000,
"assertionTimeout": 20000,
"pageLoadTimeout": 8000
}
**数据输入代码块**
async listAnItem() {
await t
.typeText(Selector('#description'), this.DESCRIPTION) /* --> Application is slowing after this step */
.click(this.categorySelect)
.click(Selector('#react-select-2-option-0-0'))
.testcaferc.json文件
async uploadImage() {
await t.setFilesToUpload(this.imageInput, ['../../uploads/photo02.jpg']);
}
{
"browsers": [ "chrome", "safari" ],
"remoteChromeVersion": "80",
"src": "specs",
"reporter": [
{
"name": "spec"
}
],
"speed": 1,
"debugOnFail": false,
"skipJsErrors": true,
"selectorTimeout": 20000,
"assertionTimeout": 20000,
"pageLoadTimeout": 8000
}
文件上载的DOM片段
<input aria-describedby="error__images" aria-label="Upload an image" tabindex="0" type="file" multiple="" accept="image/jpeg, image/png" data-testid="imageInput" class="ImageInputstyles__Input-sc-2l692w-7 aosWu">
问题本身不是由于上载文件控件造成的。 由于一个下拉框(上传文件后)正在动态更新另一个下拉框,该下拉框的值根据第一个下拉框中选择的值动态填充,因此出现了问题 重写下拉操作(如下所示)解决了问题:
async fillSubCategoryFields(catType = 'CAT_NAME') {
await t
.click(this.categorySelect, { timeout: 50 })
.click(Selector('.listingSelect__option').withText(catType));
}您能否澄清,在等待期间,TestCafe是否在浏览器中显示“等待元素出现…”消息?如果前面没有文件上传,TestCafe会在typeText操作时停止吗?@ArseniyRubtsov是的。它确实会说“等待元素出现…”。但是浏览器很早以前就被加载了。很可能,这种行为与
setFilesToUpload
操作无关。您可以在测试中忽略此操作来检查它。TestCafe是在typeText
操作写入文本之前还是之后等待?当您需要的元素隐藏在另一个元素下时,可能会发生这种延迟。如果是这种情况,您可以尝试设置有问题的操作。如果您能发送一个例子来说明这个问题,那会很有帮助。是的。它似乎正在下拉列表中等待。Other@user2451016我无法用给定的标记片段重现该问题。您能分享显示问题行为的整个页面吗?