chatGPT: 探讨如何实现自动化测试场景
背景
本文将介绍与 chatGPT 探讨关于如何实现语法错误的检查校验基于 UI 自动化测试。
测试场景介绍
当我们在使用英语作为输入语言,在某个 app 的时候输入一个错误的单词`testd`此时在 app 的输入框需要把这个单词高亮(单词底部出现红色线)。
当然,对于语法错误的检测,有一些工具使用了语言模型,通过分析上下文和语法规则来确定哪些单词可能有问题。另外一些工具则使用了规则引擎,基于预先定义的规则和模式进行检测。无论是哪种方法,都需要一个可靠的算法来确定哪些单词可能是错误的。在这里我们更多的是使用了第三方的 SDK,没有对这块进行验证,探讨的例子也只是浮于表面的 UI 视觉上的验证。
与 chatGPT 对话
问题 1: 如何对有语法错误的单词进行自动化测试?
这里告诉了我 6 个步骤,但是没有获得我想要的答案。继续提问,对于第二个 tools 的描述我有了兴趣
问题 2:请介绍一个基于 typescript 的语法检查工具?
这个问题似乎跟本文关系不大,继续提问
问题 3: 对不起,我需要验证 UI 中高亮显示的错误单词,如何做到这一点?
以上我终于看到重点了,他告诉我可以使用某些的自动化测试工具去验证,这里并没有为我描述具体改怎么做,假定我也不知道该如何实现?
问题 4:我使用 selenium 进行 UI 自动化测试,但是我无法验证?
(这里使用了很模糊的描述,`无法验证`),看看它是怎么回答的。
答案来了,这里它告诉我可以使用 HTML and CSS 去验证,通过 selenium 的 find_elements()找到对应的 attribute 去比较。这是一个解决方案了,继续刁难
问题 5:当出现单词错误时,我发现文本属性没有差异,我认为这是系统标注的。我如何验证它?
这个问题我告诉他我在文本属性中没找到差异,我认为是系统标注的(这里的系统指的是 MacBook Pro 等自带的行为,但是我使用了模糊描述。
这里告诉我可以验证 style,还提供了 example。在 UI 上可能还是拿不到的情况下会如何.
问题 6: here is innerHtml ' <div class="editor" contenteditable="true" data-placeholder="ABC" <p>test</p></div> ',这意味着我不能使用 find_element 来验证高亮显示。所以,我认为高亮是操作系统的行为,比如 MacBook Pro
看吧,当我告诉他是 OS 的行为的实话,他发现无法通过元素的属性得到结果,给了一个朴实无法的通过 OCR 的测试方案,还给了我一段代码,看似很完美。
结果分析
通过以上的 6 个问题,其实可以发现 chatGPT 可以为我们提供解决思路,如果需要准确的答案你需要输入尽可能准确的描述。在开始的问题中我使用了模糊的描述,这里面可以发现,我很难得到我想要的答案。对比 4,5 的问题跟 6,可以看到比较明显的差异。
在实际的过程中,很可能就是像上面描述的一样,我就是一头雾水的状态,那想要得到答案就需要经过一番的验证。
总体的体验来说,比起我一头雾水的是 google 效率上会高效。
总结
根据这几天的使用,也许 chatGPT 可以先成为你工作中的小助手,帮你答疑解惑。
版权声明: 本文为 InfoQ 作者【夏兮。】的原创文章。
原文链接:【http://xie.infoq.cn/article/21afdf062ed0b8bec5cc0a527】。
本文遵守【CC BY-NC】协议,转载请保留原文出处及本版权声明。
评论