老早就想写一些Selenium测试框架的搭建,但是时间和想法都不太成熟。今天 就大概粗略的和大家分享一下。
本文的背景假设读者有一定的selenium使用经验。
1.元素定位
大家都知道,网页这个东西在浏览器里展现出来的是一个完整的xml,所以可 以通过xml的访问方式,字符串查询,正则等来访问xml。
selenium支持的遍历模式有:
public class By { protected By(); protected By(Func<ISearchContext, IWebElement> findElementMethod, Func<ISearchContext, ReadOnlyCollection<IWebElement>> findElementsMethod); public static bool operator !=(By one, By two); public static bool operator ==(By one, By two); protected string Description { get; set; } protected Func<ISearchContext, IWebElement> FindElementMethod { get; set; } protected Func<ISearchContext, ReadOnlyCollection<IWebElement>> FindElementsMethod { get; set; } public static By ClassName(string classNameToFind); public static By CssSelector(string cssSelectorToFind); public override bool Equals(object obj); public virtual IWebElement FindElement(ISearchContext context); public virtual ReadOnlyCollection<IWebElement> FindElements(ISearchContext context); public override int GetHashCode(); public static By Id(string idToFind); public static By LinkText(string linkTextToFind); public static By Name(string nameToFind); public static By PartialLinkText(string partialLinkTextToFind); public static By TagName(string tagNameToFind); public override string ToString(); public static By XPath(string xpathToFind); }
大家可以看到最后一个是通过xpath,其他的例如classname,cssselector等 估计也是通过xpath来实现的。大家可以去具体看看webdrvier实现的源码,验证 一下思想,如果后续有时间,我会剖析一下webdriver的源代码。
好了,有了xpath,就可以定位网页上的元素了。
以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索string
, static
, selenium
, override
, public
, protected
by
selenium测试框架、selenium测试框架搭建、selenium测试框架选择、selenium2测试框架、基于selenium测试框架,以便于您获取更多的相关知识。