偶尔我听到了New Relic的人工合成物说他们没有“技术背景”或者只是太恐吓的用户,写作脚本浏览器来测试他们的网站。虽然我理解他们的担忧,但我在这里向大家保证,编写这些脚本会更容易,也更有趣!比你期望的。考虑到这一点,让我们来看看编写一个简单而有效的脚本的过程,该脚本用于监视创建新用户帐户的过程Amazon.com。
关于脚本浏览器的一些快速细节
使用综合性,您可以编写自定义脚本以测试您网站的各个方面。该脚本在浏览器中运行并导航您的网站,以记录站点或创建用户帐户等特定操作。脚本浏览器使用基于节点的脚本语言推动Selenium供电的Google Chrome浏览器。
此示例中的脚本使用HTMLID
s。您可以参考如何提示如何定位这些或其他类型的页面元素。
在实际运行脚本浏览器之前,您需要添加和编辑新的遗物综合性监视器。
在这个例子中,我们的脚本浏览器将:
- 访问亚马逊的帐户创建页面
- 找到打开创建设置的触发器
- 标识要交互的页面项
- 提交帐户创建请求
第1步:访问页面
第一步是让脚本导航到Amazon网站的主页。在本例中,我们将使用美元browser.get (https://www.amazon.com/)
:
//运行脚本var defaulttimeout = 60000所需的额外变量;var useragent =“newrelic”;//步骤1。然后(函数(){console.log; //获取我们要监视的页面返回$ browser.get(“https://www.amazon.com/”);})
步骤2:找到触发器
接下来,脚本“单击”几个按钮,以便访问该页面以创建新帐户。要查找合适的按钮,脚本搜索特定的名称ID
对于那些元素(在这种情况下,Nav-Link-Account-List和CreateAccountSubmit)。
脚本使用ClickeLement“登录”
和点击“创建帐户”
要执行这些操作:
//step 2a .then(function() { console.log; //Action 1: Finding Page return ‘$browser.waitForAndFindElement (By.id(“nav-link-accountList”), DefaultTimeout); }) .then(function (el) {el.click(); }) //step 2b .then(function() { Console.log; //Action 2: Press ‘Create Account’ return ‘$browser.waitForAndFindElement(By.id(“createAccountSubmit”), DefaultTimeout); }) .then(function (el) {el.click(); })
第3步:识别互动项
既然脚本已经找到了正确的页面,我们只需要填写所需信息以创建我们的帐户。我们需要找到元素ID
表示页面上每个项目的输入栏。因此,在这种情况下,我们需要以下内容ID
':ap_customer_name
那ap_email
那AP_PASSWORD.
,ap_password_check.
。
该脚本使用SendKeys函数为其需要填写的字段提供输入。以下两个示例填写了客户名称和密码字段;您可以通过更换填写其他字段ID
相应的行动。
//step 3a .then(function() {Console.log;//Action 3: Add in Name return ' $browser.waitForAndFindElement(By.id(" ap_customer_name "), DefaultTimeout);}) .then(function (el) {el.clear();el.sendKeys(“myscriptedaccount”);}) //步骤3b .then(function() {Console.log;//Action 4: Add in Password return ' $browser.waitForAndFindElement(By.id(" ap_password "), DefaultTimeout);}) .then(function (el) {el.clear();el.sendKeys(“myscriptedpassword”);})
第4步:提交帐户创建请求
最后,脚本已准备好单击“创建Amazon帐户”按钮提交请求。
//step 4 .then(function() { Console.log; //Action 5: Press “Create your Amazon account” return ‘$browser.waitForAndFindElement(By.id(“continue”), DefaultTimeout); }) .then(function (el) { el.click();})
这就是这个脚本的结束!相当简单的东西。
既然我们拥有此监视器,我们可以运行它并在此重要交易无法工作时获取通知,并将建立我们可以使用的基线性能数据来优化我们网站的流程。
记住,这只是你可以用New Relic synthes编写的脚本浏览器的一个例子。看看这些其他例子或者看看New Relic的文档或我们的参考指南了解更多信息。
本博客所表达的观点是作者个人的观点,并不一定代表New Relic的观点。作者提供亚博直播平台的任何解决方案都是特定于环境的,不属于New Relic提供的商业解决方案或支持的一部分。请在探索者中心(discuss.newrelic.com)对于与此博客文章相关的问题和支持。此博客可能包含第三方网站上内容的链接。通过提供此类链接,新的遗物不会采用,保证,批准或支持此类站点上提供的信息,视图或产品。亚博最新版直播