云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

免备案CDN_深圳学校网站建设_试用

小七 141 0

Selenium很容易成为最流行的开源测试自动化框架之一,GitHub上有超过18K个star,全球有成千上万的用户和开发人员。您可能会看到它在各种规模的企业中运行,包括大型SAP客户。另一方面,tnrt新零售企业应用中心,尽管SAP CBTA绝不像Selenium那么受欢迎,但它是一个SAP自动化测试专有工具,有一个主要限制:只有SAP技术得到官方支持(有关更多信息,请参阅SAP Note 2436142)。

您能否无缝集成SAP CBTA和Selenium以自动化给定的业务流程?与HP、Tricentis或Worksoft不同,您没有本机集成。但是,由于CBTA是用visualbasic脚本(VBS)构建的,并且允许您选择构建自己的函数,因此您仍然可以尝试一下。

SAP不支持这些。在生产中尝试任何东西之前,一定要建立一个原型,并确保团队中有合适的专家(内部或外部资源)!

硒作为一个框架,你有多种使用方法。因为它在视觉上更吸引人,代码也更低,所以我将使用Selenium IDE(一个集成开发环境的录制和回放浏览器扩展)和Selenium命令行运行程序(Selenium.side脚本的命令行执行)。

我们的目标:执行一个单独的CBTA脚本,其中Selenium将接管执行2个月步骤。该脚本将针对sapcrm(这里是sapssolutionmanager)和googlechrome运行。我们还希望Selenium不被注意地运行并重用sapcbta首先触发的浏览器窗口。

首先,针对googlechrome构建一个简单的CBTA脚本。在我的示例中,淘客商城,我让我的用户执行以下操作:1)登录到CRM;2)单击"更改请求管理"菜单链接;3)单击"更改文档"链接;4)单击"搜索"按钮。

其次,安装Selenium IDE for Chrome并创建新项目。设置播放URL(例如CRM主页)并开始录制与CBTA完全相同的步骤。删除除最后两个步骤外的所有步骤(上一列表中的3和4)。显然,这只是一个示例,但它说明了您需要Selenium的3个常见原因之一:

需要注意的是,您的脚本需要从"open"命令开始,否则Selenium将根本无法启动。别担心,这并不意味着会打开一个新的浏览器窗口,学生云服务器,而不是重用现有的窗口。保存Selenium项目(.side格式)。

第三,确保SAP Solution Manager系统上的运行库管理器(RTL)正常工作。您可以按照SAP Note 1912801进行定制。如果您的服务器运行在HTTP协议(meh)上,则不要在webservice配置中选择SSL选项。RTL允许您创建VBS脚本,CBTA可以在执行过程中调用这些脚本——可以将其看作是为自定义需求构建Z*代码。导航到"Test Suite–Administration"磁贴并单击"Customize RTL"链接以启动RTL。

CBTA文档再次出色地解释了如何工作。您可以参考"CBTA 3.0–Runtime Library Manager"PDF,了解如何为函数设置本地存储路径并将其与SAP CBTA同步。在您喜爱的IDE(如Atom)或标准模板中从头开始创建一个新的.vbs文件。

除了所需的模板部分(请参阅文档),my core函数有两个主要功能:

Selenium\u CBTA\u Impl()定义了用于将数据传递到Selenium脚本的不同输入参数–这里,云服务器如何,前两个输入定义了my.vbs脚本默认本地文件路径,其余设置为空;Set WshShell触发Selenium执行的命令行。重用现有浏览器窗口有不同的方法(执行时由CBTA调用的方法)。因为SAP CBTA可以默认在Google Chrome调试端口上执行脚本,一个简单的选择是在同一个端口上启动Selenium—例如:"Selenium side runner"&Input1&Input2&"-c""browserName=chromegoog:chromeOptions.debuggerAddress地址='127.0.0.1:9222''"

您将注意到在执行命令后函数返回"DONE"。但是,由于没有逻辑来确定Selenium执行是否成功,因此它总是返回"DONE"作为输出参数。确保实现您自己的逻辑(例如,检查Selenium执行日志的通过或失败结果)。

现在,回到测试组合环境,禁用您希望用Selenium自动执行的步骤(在我的例子中,是最后两个步骤),并添加一个新的CBTA默认组件,返利微信,类型为"CBTA_u*\u a\u INVOKE\u FUNCTION"或"CBTA_*\u a\u EXECUTESTATEMENT"。这两个组件都调用一个自定义脚本作为测试执行的一部分,但是在何时应该使用其中一个脚本方面存在一些关键的区别。请参阅CBTA前端文档。

还记得我的Seleniu\u CBTA\u Impl(Input1、Input2、Input3、Input4、Options)吗?使用"调用函数"组件,每个输入都会自动映射到参数1等。在我的例子中,我不需要任何输入,但您可以使用这些参数将数据传递给Selenium。

保存脚本并运行它。你应该注意到…没有任何区别。因为我们选择在后台触发硒,所以如果不看执行报告,就无法将其与CBTA区分开来: