这个问题不是关于窗口处理或处理多个浏览器窗口,而是关于在同一个窗口中浏览web应用程序的网页。我有一种情况
1.我以屏幕A->屏幕x->屏幕Y->屏幕B导航
2.我需要从第一次登录时在屏幕B上捕获某些参数
3.我需要从第二次登录时在屏幕B上验证这些参数。
在这里,我希望做的是避免在中间屏幕中导航的非重要任务&直接跳转到相关的屏幕。或者直接捕获相关的参数,而不用担心UI。
注-此应用程序窗口上的URL不可手动编辑.
例子-
登录->跳转到屏幕B(第一个登录)
登录->跳转到屏幕B(第二个登录)
最重要的是,有可能吗??请帮助我提出如何实现这一目标的建议。
附加详细信息-
查看名为Selenium Test 275 (应用程序中的特定网页)的项目的URL是->。
http://172.24.186.71/esssfa/sfanew/UnitList.aspx?OID=12762&PID=12731&PRID=1&SecID=3发布于 2014-12-24 07:19:34
编辑:
我想我现在明白你的要求了。如果您想轻松地向后跳几页,请转到特定的屏幕B,我将使用JavaScript。
(-1)将得到浏览器堆栈上的最后一页。(-2)两页,(2)将使浏览器在浏览器上转发两页。如果您想回到屏幕B,请在登录后尝试这样的操作。
driver.execute_script("window.history.go(-2)")然后,可以使用一个变量来存储您想要比较的上次登录的数据。
发布于 2014-12-26 20:32:17
可能是第二个窗口是根据服务器的响应打开的?例如,服务器可以返回一个URI以及一个会话/安全属性(JSESSIONID、Authorization等),然后附加基本URI以打开新窗口。会话/安全属性解释第二个页面的driver.get(URL)时无效的会话页消息。
冒着重复的风险(修改Vivek的问题)--您能否以这种方式打开第二个屏幕:登录到应用程序(第一个屏幕) ->,打开一个新的浏览器窗口,->粘贴第二个屏幕的(只读)网址,然后点击Enter ->检查第二个屏幕打开。
如果是,那么它不仅是简单的GET请求,而且可能是请求头中带有某种授权代码的请求。
其他细节可能有助于回答你的问题:这是可能的吗?!
https://stackoverflow.com/questions/27633001
复制相似问题