pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

TestCafe - 如何在不通過測試的情況下檢查 Web 元素

TestCafe - How to check if a web element exists or does not exist without failing the test?(TestCafe - 如何在不通過測試的情況下檢查 Web 元素是否存在?)
本文介紹了TestCafe - 如何在不通過測試的情況下檢查 Web 元素是否存在?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我正在嘗試編寫一個腳本,該腳本需要根據 CSS 選擇器找到的特定瀏覽器對象是否存在來調整其工作流行為.

I'm trying to write a script that needs to adapt it's workflow behavior depending on whether a particular browser object found by CSS selector exists or does not exist.

我不想使用 document.getElementByID 方法,因為這在技術上不是 CSS 選擇器,而且我們的整個企業都在 CSS 選擇器上進行了標準化,所以除了 CSS 選擇器之外的任何遍歷 DOM 的東西都不會通過我們的無論如何都要進行代碼審查.

I do not want to use a document.getElementByID method as this is not technically a CSS selector, and our entire enterprise is standardized on CSS selector so anything that walks the DOM other then a CSS selector won't make it past our code review process anyway.

var thing = await things.thingSelector(thingName);
if (await t.expect(thing.exists).notOk()) {
   await t.click(things.OpenThing(thingName));
} else {
   return false;
}
return true;

thingSelector 在哪里:

Where thingSelector is:

const thingSelector = name =>
  Selector('p.thing-header-title span')
    .withText(name)
    .parent('div.thing');

OpenThing 在哪里:

Where OpenThing is:

const OpenThing = name =>
    thingSelector(name)
        .find('a.thing-footer-item')
        .withText('Open');

如果對象不存在并且我正在檢查它是否存在,或者如果對象存在并且我正在檢查它不存在,以及對象存在的情況,我需要能夠繼續執行不存在,不存在,對象不存在,我正在檢查它是否不存在.

I need to be able to continue execution if the object is not there and I'm checking that it exists, or if the object is there and I'm checking that it does not exist, and also the cases where the object is not there and it does not exist and the object is not there and I'm checking that it does not exist.

在所有情況下,我仍然需要繼續工作流程.

In all cases I still need to proceed with the workflow.

邏輯硬幣的兩面我都試過了:

I've tried both sides of the logic coin:

if (!await t.expect(thing.exists).ok())

if (await t.expect(thing.exists).notOk())

如果上述其中一項在一種情??況下未失敗,則在另一種情況下將失敗,而在第一個未失敗的情況下,另一項將失敗.我需要一些能給我邏輯的東西,但永遠不會使腳本執行失敗,并且仍然允許我根據對象是否存在返回 True 或 False.

If one of the above doesn't fail in one scenario it will fail in the other, and the other one will fail in the scenario that the first one didn't fail. I need something that will give me the logic, but not ever fail the script execution and still allow me to return either True or False depending on if the object is present or not present.

提前感謝您幫助我解決了這個問題,也感謝您學習和提高我的 Javascript 技能!

Thank you in advance for helping me to solve this problem, and also to learn and grow in my Javascript skills!

推薦答案

您可以通過以下方式檢查 if 條件中的 async exists 屬性:

You can check the async exists property in the if condition in the following way:

if(await things.thingSelector(thingName).exists) {
    // do something 
} 

這篇關于TestCafe - 如何在不通過測試的情況下檢查 Web 元素是否存在?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

Using querySelectorAll(). Is the result returned by the method ordered?(使用 querySelectorAll().方法返回的結果是否有序?)
Safari bug :first-child doesn#39;t update display:block when items are removed with JS(Safari 錯誤:當使用 JS 刪除項目時,first-child 不更新 display:block)
CSS: Select element only if a later sibling exists(CSS:僅當存在較晚的兄弟時才選擇元素)
How to show the child div on mouse hover of parent div(如何在父div的鼠標懸停時顯示子div)
How to properly escape attribute values in css/js attribute selector [attr=value]?(如何在 css/js 屬性選擇器 [attr=value] 中正確轉義屬性值?)
jQuery selectors - find objects without specified attribute(jQuery 選擇器 - 查找沒有指定屬性的對象)
主站蜘蛛池模板: 南汇8424西瓜_南汇玉菇甜瓜-南汇水蜜桃价格 | 淬火设备-钎焊机-熔炼炉-中频炉-锻造炉-感应加热电源-退火机-热处理设备-优造节能 | 环比机械| 不锈钢水箱厂家,不锈钢保温水箱-山东桑特供水设备 | 德州网站制作 - 网站建设设计 - seo排名优化 -「两山建站」 | 滁州高低温冲击试验箱厂家_安徽高低温试验箱价格|安徽希尔伯特 | 济南展厅设计施工_数字化展厅策划设计施工公司_山东锐尚文化传播有限公司 | 电缆桥架生产厂家_槽式/梯式_热镀锌线槽_广东东莞雷正电气 | 交变/复合盐雾试验箱-高低温冲击试验箱_安奈设备产品供应杭州/江苏南京/安徽马鞍山合肥等全国各地 | 半容积式换热器_北京浮动盘管换热器厂家|北京亿丰上达 | 哈希PC1R1A,哈希CA9300,哈希SC4500-上海鑫嵩实业有限公司 | 欧必特空气能-商用空气能热水工程,空气能热水器,超低温空气源热泵生产厂家-湖南欧必特空气能公司 | 自清洗过滤器-全自动自清洗过反冲洗过滤器 - 中乂(北京)科技有限公司 | 蜂窝块状沸石分子筛-吸附脱硫分子筛-萍乡市捷龙环保科技有限公司 | 气动隔膜泵-电动隔膜泵-循环热水泵-液下排污/螺杆/管道/化工泵「厂家」浙江绿邦 | 液压油缸-液压缸厂家价格,液压站系统-山东国立液压制造有限公司 液压油缸生产厂家-山东液压站-济南捷兴液压机电设备有限公司 | 长沙印刷厂-包装印刷-画册印刷厂家-湖南省日大彩色印务有限公司 青州搬家公司电话_青州搬家公司哪家好「鸿喜」青州搬家 | 焊接减速机箱体,减速机箱体加工-淄博博山泽坤机械厂 | 番茄畅听邀请码怎么输入 - Dianw8.com| 电加热导热油炉-空气加热器-导热油加热器-翅片电加热管-科安达机械 | ★店家乐|服装销售管理软件|服装店收银系统|内衣店鞋店进销存软件|连锁店管理软件|收银软件手机版|会员管理系统-手机版,云版,App | 托利多电子平台秤-高精度接线盒-托利多高精度电子秤|百科 | 珠光砂保温板-一体化保温板-有釉面发泡陶瓷保温板-杭州一体化建筑材料 | 登车桥动力单元-非标液压泵站-非标液压系统-深圳市三好科技有限公司 | 早报网| VI设计-LOGO设计公司-品牌设计公司-包装设计公司-导视设计-杭州易象设计 | 科箭WMS仓库管理软件-TMS物流管理系统-科箭SaaS云服务 | 广州工业氧气-工业氩气-工业氮气-二氧化碳-广州市番禺区得力气体经营部 | 安徽免检低氮锅炉_合肥燃油锅炉_安徽蒸汽发生器_合肥燃气锅炉-合肥扬诺锅炉有限公司 | 电池高低温试验箱-气态冲击箱-双层电池防爆箱|简户百科 | 济南货架定做_仓储货架生产厂_重型货架厂_仓库货架批发_济南启力仓储设备有限公司 | 缠绕机|缠绕膜包装机|缠绕包装机-上海晏陵智能设备有限公司 | 电销卡_北京电销卡_包月电话卡-豪付网络 | 耐火浇注料-喷涂料-浇注料生产厂家_郑州市元领耐火材料有限公司 耐力板-PC阳光板-PC板-PC耐力板 - 嘉兴赢创实业有限公司 | 底部填充胶_电子封装胶_芯片封装胶_芯片底部填充胶厂家-东莞汉思新材料 | vr安全体验馆|交通安全|工地安全|禁毒|消防|安全教育体验馆|安全体验教室-贝森德(深圳)科技 | 拼装地板,悬浮地板厂家,悬浮式拼装运动地板-石家庄博超地板科技有限公司 | 黑龙江京科脑康医院-哈尔滨精神病医院哪家好_哈尔滨精神科医院排名_黑龙江精神心理病专科医院 | 铝镁锰板_铝镁锰合金板_铝镁锰板厂家_铝镁锰金属屋面板_安徽建科 | 长沙广告公司|长沙广告制作设计|长沙led灯箱招牌制作找望城湖南锦蓝广告装饰工程有限公司 | 重庆磨床过滤机,重庆纸带过滤机,机床伸缩钣金,重庆机床钣金护罩-重庆达鸿兴精密机械制造有限公司 |