Selenium 与页面对象相比,使用剧本模式有哪些优点/缺点?

Selenium 与页面对象相比,使用剧本模式有哪些优点/缺点?,selenium,automated-tests,cucumber,pageobjects,serenity-bdd,Selenium,Automated Tests,Cucumber,Pageobjects,Serenity Bdd,我看了一段视频,建议使用剧本模式来替代通常的页面对象。我看到的唯一优势是页面对象类没有那么大。我还缺什么吗?我一直在搜索,所有网站都在引用youtube讲座上使用serenity bdd的例子。有人能解释为什么它比使用页面对象更好(或者更糟) 一个不使用serenity bdd的例子会很有帮助。简而言之,剧本鼓励更好的软件工程实践,从而使测试更快编写,更易于长期维护,但需要更好地理解OOP以产生其全部好处(尽管它在初级工程师中的规模确实非常大,只要周围有几位高级工程师了解这种模式) 页面对象,其

我看了一段视频,建议使用剧本模式来替代通常的页面对象。我看到的唯一优势是页面对象类没有那么大。我还缺什么吗?我一直在搜索,所有网站都在引用youtube讲座上使用serenity bdd的例子。有人能解释为什么它比使用页面对象更好(或者更糟)


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

简而言之,剧本鼓励更好的软件工程实践,从而使测试更快编写,更易于长期维护,但需要更好地理解OOP以产生其全部好处(尽管它在初级工程师中的规模确实非常大,只要周围有几位高级工程师了解这种模式)

页面对象,其目的只是为了帮助自动化测试人员更好地进行测试自动化实践,但它仍然会导致代码难以维护。请参阅本文,了解源代码:

还有一些其他的剧本实现,包括: -JNarrate: -叙述:

剧本是一种以演员或用户为中心的模型,在许多情况下,它比step库更易于扩展和重用。一旦编写了任务,您几乎不需要更改它(遵循开放-封闭原则)。以演员为中心的模型还可以更容易地对场景中多个用户交互的情况进行建模(例如,使用不同的浏览器)。Jan Molak在本文中谈到了剧本以演员为中心的一面: