为什么要使用页面工厂?

2024-03-04

我是一名新的测试工程师,一直在阅读有关页面对象模型的内容并实现它们,并不断遇到页面工厂。据我所知,Page Factory 是一个 POM,它提供了额外的功能,例如在调用 Page Factory 时实例化所有元素以及用于测试的更可读代码(尽管我并不完全相信可读性)。需要明确的是,我对 POM 很感兴趣。代码的可重用性和相对容易的维护性非常好,我正在朝这个方向进行构建。

我归结为两个问题:

  • 为什么我想要实例化所有元素而不是即时执行?
  • 我缺少的 Page Factory 优点是什么?

这是 Selenium 项目负责人兼 Page Factory 的创建者 Simon Stewart 在奥斯汀举行的 2017 年 SeleniumConf 上的报道。在他的主题演讲中,他说不要使用 Page Factory。这一部分的演讲从这里开始:

https://youtu.be/gyfUpOysIF8?t=1517 https://youtu.be/gyfUpOysIF8?t=1517

实际发言时间为27:25。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么要使用页面工厂? 的相关文章

  • 如何使用MemoryCache代替Timer来触发一个方法?

    以下方法通过等待已运行操作的结果来处理并发请求 对数据的请求可能会使用相同 不同的凭据同时出现 对于每组唯一的凭据 最多可以有一个GetCurrentInternal呼叫正在进行中 当准备就绪时 该呼叫的结果将返回给所有排队的服务员 pri
  • 使用 Unity 在构造函数中使用属性依赖注入

    好的 我在基类中定义了一个依赖属性 我尝试在其派生类的构造函数内部使用它 但这不起作用 该属性显示为 null Unity 在使用 container Resolve 解析实例后解析依赖属性 我的另一种选择是将 IUnityContaine
  • std::cout 和 std::wcout 有什么区别?

    在c 中 有什么区别std cout and std wcout 它们都控制流缓冲区的输出或将内容打印到控制台 或者它们只是相似吗 它们作用于不同的字符类型 std cout uses char作为字符类型 std wcout uses w
  • 启动时出现 OData v4 错误:找不到段“Whatever”的资源

    我正在构建新的 v4 服务 一切进展顺利 直到我为新模型 实体添加了新控制器 并在启动站点进行测试运行时收到此错误 控制器似乎编码正确 就像其他控制器一样 控制器 CustomersOData 中的操作 GetFeed 上的路径模板 Cus
  • 在 Unity 进程和另一个 C# 进程之间进行本地 IPC 的最快方法 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我希望每秒大约 30 次从 C 应用程序向我的 Unity 应用程序传送大量数据 由于 Unity 不支持映射内存和管道 我考虑了 t
  • 存储来自其他程序的事件

    我想将其他应用程序的事件存储在我自己的应用程序中 事件示例 打开 最小化 Word 或打开文件时 这样的事可能吗 运行程序 http msdn microsoft com en us library ms813609 aspx and 打开
  • 在 C# 中循环遍历文件文件夹的最简单方法是什么?

    我尝试编写一个程序 使用包含相关文件路径的配置文件来导航本地文件系统 我的问题是 在 C 中执行文件 I O 这将是从桌面应用程序到服务器并返回 和文件系统导航时使用的最佳实践是什么 我知道如何谷歌 并且找到了几种解决方案 但我想知道各种功
  • Rx 中是否有与 Task.ContinueWith 运算符等效的操作?

    Rx 中是否有与 Task ContinueWith 运算符等效的操作 我正在将 Rx 与 Silverlight 一起使用 我正在使用 FromAsyncPattern 方法进行两个 Web 服务调用 并且我想这样做同步地 var o1
  • 未定义的行为或误报

    我 基本上 在野外遇到过以下情况 x x 5 显然 它可以在早期版本的 gcc 下编译干净 在 gcc 4 5 1 下生成警告 据我所知 警告是由 Wsequence point 生成的 所以我的问题是 这是否违反了标准中关于在序列点之间操
  • 如何修改 contenteditable 元素的innerHTML

    我使用 Selenium 与 Chrome driver 和 python3 6 来测试网站 我在网页中有代码片段如下 div class 3F6QL 2WovP div class 39LWd Type a message div div
  • 如何从main方法调用业务对象类?

    我已将代码分为业务对象 访问层 如下所示 void Main Business object public class ExpenseBO public void MakeExpense ExpensePayload payload var
  • 如何对 Web Api 操作进行后调用?

    我创建了一个 Web API 操作 如下所示 HttpPost public void Load string siteName string providerName UserDetails userDetails implementat
  • .NET中的LinkedList是循环链表吗?

    我需要一个循环链表 所以我想知道是否LinkedList是循环链表吗 每当您想要移动列表中的 下一个 块时 以循环方式使用它的快速解决方案 current current Next current List First 电流在哪里Linke
  • (de)从 CSV 序列化为对象(或者最好是类型对象的列表)

    我是一名 C 程序员 试图学习 C 似乎有一些内置的对象序列化 但我在这里有点不知所措 我被要求将测试数据从 CSV 文件加载到对象集合中 CSV 比 xml 更受青睐 因为它更简单且更易于人类阅读 我们正在创建测试数据来运行单元测试 该集
  • Process.Start() 方法在什么情况下返回 false?

    From MSDN https msdn microsoft com en us library e8zac0ca v vs 110 aspx 返回值 true 表示有新的进程资源 开始了 如果由 FileName 成员指定的进程资源 St
  • Server.MapPath - 给定的物理路径,预期的虚拟路径

    我正在使用这行代码 var files Directory GetFiles Server MapPath E ftproot sales 在文件夹中查找文件 但是我收到错误消息说 给定物理路径但虚拟路径 预期的 我对在 C 中使用 Sys
  • memset 未填充数组

    u32 iterations 5 u32 ecx u32 malloc sizeof u32 iterations memset ecx 0xBAADF00D sizeof u32 iterations printf 8X n ecx 0
  • Linq-to-entities,在一个查询中获取结果+行数

    我已经看到了有关此事的多个问题 但它们已经有 2 年 或更长 的历史了 所以我想知道这方面是否有任何变化 基本思想是填充网格视图并创建自定义分页 所以 我还需要结果和行数 在 SQL 中 这将类似于 SELECT COUNT id Id N
  • 检查Windows控制台中是否按下了键[重复]

    这个问题在这里已经有答案了 可能的重复 C 控制台键盘事件 https stackoverflow com questions 2067893 c console keyboard events 我希望 Windows 控制台程序在按下某个
  • 如何正确使用 std::condition_variable?

    我很困惑conditions variables以及如何 安全 使用它们 在我的应用程序中 我有一个创建 gui 线程的类 但是当 gui 是由 gui 线程构造时 主线程需要等待 情况与下面的函数相同 主线程创建互斥体 锁和conditi

随机推荐

  • onreadystatechange 中 XHR 获取请求 URL

    有没有办法在 onreadystatechange 方法中获取请求的URL 我想运行多个 XHR 请求并知道其中哪个会返回 xhr open GET https url i true xhr onreadystatechange funct
  • django 剥离/删除/清除值

    我正在使用 django 1 6 7 和 python 2 7 我试图在将值提交到数据库之前清除字段中的数据 如果它符合条件 我一直在使用 strip 但这不再有效 搜索 django 文档后我找不到解决方案 这是我的 forms py 文
  • WPF 中的数字数据输入

    您如何处理 WPF 应用程序中的数值输入 如果没有 NumericUpDown 控件 我一直在使用 TextBox 并使用下面的代码处理其 PreviewKeyDown 事件 但它非常丑陋 有没有人找到一种更优雅的方式来从用户获取数字数据而
  • 如何在 NetBeans 平台中隐藏没有图层文件的菜单?

    我很难在 NetBeans 平台中自定义菜单 我看到的示例要求您拥有一个 Layer 文件 但我认为我的 NetBeans 平台项目中没有该文件 要通过图层隐藏菜单 您应该这样做
  • 使用 PHP eval 的风险[重复]

    这个问题在这里已经有答案了 可能的重复 什么时候 如果有的话 eval 不是邪恶的 https stackoverflow com questions 3499672 when if ever is eval not evil php 中的
  • 两个互相引用的类

    我是 C 新手 所以这个问题可能很基本 我有两个类需要互相引用 每个都在自己的头文件中 include 是另一个的头文件 当我尝试编译时 我收到其中一个类的错误 ISO C 禁止声明没有类型的 Foo 如果我切换事物 以便首先解析相反的标头
  • BottomNavigationView.setupWithNavController 不起作用

    目前我正在开发一个Android应用程序 我想在其中同时利用Android Navigation Component and BottomNavigationView 在开发上述应用程序时 我签出了官方代码实验室这里有几个问题 但事实证明它
  • Firebase Web:下载 URL 中的存储位置

    我正在编写一个需要存储位置的 firebase 函数 现在我有下载网址 有没有办法像这样获取存储位置 gs dexxxxxxxxxxxxxxxx com videosvideo 67423 http gs dekhoapp appspot
  • 如何存储 JWT 并使用 React 将它们与每个请求一起发送

    很高兴知道 因为我的基本注册 身份验证系统正在运行 所以基本上我得到了这个 app post login function req res Users findOne email req body email function err us
  • 使用 CL 寄存器进行移位会导致部分寄存器停顿吗?

    变量移位是否会产生部分寄存器停顿 或寄存器重组微指令 ecx 如果是 在哪种微架构上 我已经在Core2 65nm 上测试过这个 它似乎是只读的cl shiftbench push rbx mov edx 10000000 mov ecx
  • 在 x64 上,每个 PUSH 指令是否推送 8 字节的倍数?

    在 x64 上 每个 PUSH 指令是否压入 8 字节的倍数 如果没有的话 推力有多大 另外 每个函数参数消耗多少堆栈空间 64 位模式下的 PUSH 操作数大小 压入堆栈的值的大小以及堆栈指针调整的量取决于 PUSH 指令的操作数大小 在
  • 创建多个小文件的性能

    我需要一个测试应用程序 它将尽可能快地在磁盘上创建大量小文件 异步操作是否有助于创建文件或只是写入文件 有没有办法加快整个过程 不可能在单个文件上写入 物理驱动器 IO 不会成为这里的瓶颈吗 如果写入 4200rpm 驱动器 10 000r
  • 将两个分支之间的差异合并到第三个分支

    假设我有两个分支 master and new feature 我应该致力于一个特定的功能 我认为这个功能将成为new feature所以 我检查了specific feature分支出new feature分支 像这样 git check
  • 如何使用 eval(UrlFetchApp.fetch()) 在我的 google apps 脚本中加载外部 javascript?

    我正在尝试使用以下代码从 Google Apps 脚本功能 使用 Amazon SES Javascript SDK 发送电子邮件 function sendemail email name code date expiry version
  • Jquery:悬停时扩展选择选项

    如何使用 jquery 展开 打开鼠标悬停时的选择选项以显示选择列表中的所有项目
  • 如何将远程图像复制到我的网站目录?

    我从其他网站发布图片 我宁愿将它们放在我的服务器上 以防他们的服务器突然死机 假设该文件位于 www www www image gif 我如何将其安全地复制到我的目录 images 我用 PHP 编写 Thanks 以下应该有效 requ
  • 如何使用 flutter_webview 插件在 Flutter 中启用位置?

    我目前正在一个项目中使用 flutter webview 插件 在其中一个页面中 我需要获取用户位置信息来计算距离 网页上运行 JavaScript 来获取位置 这是我的示例代码 WebView key key initialUrl htt
  • TFJS-Node:如何从 url 加载模型?

    我想从节点中的 url 加载模型 这在浏览器中有效 mobileNet await tf loadModel https storage googleapis com tfjs models tfjs mobilenet v1 0 25 2
  • 从大文件中检索版本信息

    我们有大型可执行文件 gt 1 2 GB 其中包含自定义版本信息 我尝试使用 FileVersionInfo 类的 GetVersionInfo 从这些文件中检索 版本信息 由于某种原因 此方法不会返回 Windows XP 中较大文件 已
  • 为什么要使用页面工厂?

    我是一名新的测试工程师 一直在阅读有关页面对象模型的内容并实现它们 并不断遇到页面工厂 据我所知 Page Factory 是一个 POM 它提供了额外的功能 例如在调用 Page Factory 时实例化所有元素以及用于测试的更可读代码