gpt4 book ai didi

selenium - 使用 Screenplay 模式而不是 Page 对象的优点/缺点是什么?

转载 作者:行者123 更新时间:2023-12-03 15:55:34 27 4
gpt4 key购买 nike

我在 youtube 上看过一个视频建议使用剧本模式作为使用通常的页面对象的替代方法。我看到的唯一优点是页面对象类没有那么大。还有什么我想念的吗?我一直在搜索,所有网站总是使用 serenity bdd 引用 youtube 讲座上的示例。有人可以解释为什么它比使用页面对象更好(或者可能更糟)?

一个不使用 serenity bdd 的例子会很有帮助。

最佳答案

简而言之,ScreenPlay 鼓励更好的软件工程实践,从而使测试的编写速度更快,从长远来看更易于维护,但需要更好地理解 OOP 才能充分发挥其优势(尽管它确实非常适合初级工程师只要身边有几个懂模式的高级工程师就行)。

页面对象只是作为垫脚石,帮助自动化测试人员引入更好的测试自动化实践,但它仍然可能导致难以维护的代码。看看这篇文章的起源故事:https://ideas.riverglide.com/page-objects-refactored-12ec3541990 .

Screenplay 还有其他一些实现,包括:
- J叙述:https://bitbucket.org/testingreflections/jnarrate/wiki/Examples
- 旁白:https://github.com/tim-group/narrative

ScreenPlay 是一个 Actor 或以用户为中心的模型,在许多情况下,它比步骤库更容易扩展和更可重用。编写任务后,您很少需要更改它(尊重开闭原则)。以参与者为中心的模型还可以更轻松地对场景中多个用户交互的情况进行建模(例如,使用不同的浏览器)。 Jan Molak 在这篇文章中谈到了剧本以 Actor 为中心的一面:https://janmolak.com/user-centred-design-how-a-50-year-old-technique-became-the-key-to-scalable-test-automation-66a658a36555

关于selenium - 使用 Screenplay 模式而不是 Page 对象的优点/缺点是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43231285/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com