selina miui 自动化测试之警告窗口处理好,我们来看一下哈警告窗口哈如何处理? 那么在我们使用软件过程当中呢,当我们在这个修改数据或者说删除数据的时候呢,他往往都要给你弹出一个这个警告信息啊,问你这个是不是一定要这个进行这个修改或者删除啊,或者说确定或者取消。那么这种警告窗口的话呢, 注意他是没有办法直接去定位啊上面元素的,你别说这里啊,弹出了我们这个请求啊窗口好,你看啊,我现在鼠标呢已经点住这个 选选择器了啊,放上去没有响应啊,没有响应,对吧?这就意味着哈,我们这种警告窗口上面确定啊取消啊,是没有办法直接定位的啊,是没有直接定位的。 那么针对这种紧靠伤口的话呢, sm 这框架呢,也提供了鲜嫩的方法哈来对他进行处理, 那么他提供的话就是这个 sweet to 点儿啊 let 看这方法名字呢,直观来看像是切路,这个警告窗口就类似我们切框架一样,对吧?啊,那只不过呢,他是在这个切路的时候,他还会还会什么返回我们这个警告窗口对象, 把红包反为值呢,复制给一个变量,然后呢再用变量来调用相应的方法来实现点击确定,点击取消还可以获取提示信息。那么点击确定就是调用赛服的这个方法 点击取消呢,就是调用 dcmiss 这个方法啊,也就是 excess 的方法就实现了我们警告窗口的确定按钮点击,那么 dcmiss 呢就实现了什么呢?警告窗口上的这个取消按钮点击, 另外呢,还可以获取提示信息,那么 tx 的就可以了啊,那我们来看一下啊,这个例子 好,他出了啊,点了取消, 同时呢我们获取提示信息啊,那就这几个方法。第一步,当警告窗口弹扣之后啊,先定随时吐轮了,获取这个警告窗口对象,获取提示信 信息就是调 tex, 如果说你要想点确定哈,就是 that, 如果说想取消就是 desmas, 这就是我们警告窗口的处理。 本次知识输入就到这里啦,你学会了吗?还有哪些疑问,评论区留言将一一为大家解答。
粉丝314获赞2945

我们这一讲,一块来看一下警告框和弹出框的处理,我们在开展测试过程中啊,我们偶尔也会遇到一些弹出框或者警告框,遇到类似这样的对象,我们应该怎么处理呢? 我们这一讲呢,就从两部分来看,首先来看警告框 sneamer 里边呢,给我们提供了什么样的方法,然后我们再通过案例呢来巩固一下。 我们首先来看在我们 slimmer 里边呢,我们针对警告框和弹出框啊,我们提供了这些方法,一个 unlesser 的确认框,弹出框 操作属性呢基本就是这些,一个是 test 获得警告框的文本, accept 呢是 点击 ok 和确认按钮, dismiss 呢是驳回。 send case 呢,模拟给元素去发一个值,所以基本上就这三个,那我们来看一下,通过案例来看一下吧,我们在这儿写了一个简单的 stm 页面, 大家会看到这是简单的一个 alert, alert 这个 confirm, confirm 你点击取消,取消是驳回对不对?你看 驳回警告信息,点击取消或叉号关掉,所以你看我们这有取消,第二个带取消了,第三个呢是我们是带输入框了,对吧? 我们带输入框了,好,那我们就通过案例一块来看一下,在我们的 alert 操作里边呢,我们 是用的我们的 senima 给我们提供的方法呢是 switch to alert test 呢,获取弹出文本狂的消息。 except 呢?点击确认按钮, dismiss 呢是取消。那我们就直接来操作看一下,我们这个呢,还要复制过来, 哎,我们共用嘛,把它改一下,看这个警告框, 警告框或弹出框,弹出框的操作,这里边是 alert。 alert 操作好,我们这里边 已经写了这么简单的一个 html 页面,你看 alert, concerned, 也就是这么简单,就这三个嘛, alert, confirm 确定啊,就输出出来了, 在我们这里边呢,你看我点击他是他点击他是这个样子,那点击他就是这个样子。好,那我们分别来看啊,我们把它这个地址在哪里啊? 一叫做 alert, 放在了, 我们放在了一盘下面,我们把这地址呢复制一下,放到这里面替换好,我们首先来看 alert 的操作, 我们首先要选中或者是操作我们这个 alert 单选按钮,所以我们右键单机选择叉 pans, 这里边怎么弄呢? driver 点 find 叉 pens, 哎,这是 alert, 我们 clink, 这是 单机 alert 按钮,我们这里边呢? sleep 来二一下。 那我们接下来怎么办呢?需要去返回过来,返回来给谁啊?返回这个 alert 里边的文本信息,需要返回文本信息。好,我们怎么做哦,我们这样好, 返回,返回 alert 中的文字信息来, alert 音 four 等于 driver 点 switch two switch two。 第二, alert, 大家看了啊,来我们这里边 alert 这里边呢,我们要看哦,在 ppt 里边呢,我们这儿放的是一个括号的 alert 方法,我们这个呢要进行修正一下, 我们出现了笔物,我这儿修正一下是点儿啊。第二, alert, 然后我们这里边看到 alert 之后呢,我们这里边先 print 一下, 来,我们看一下。完了之后呢,我们刚才看到介绍成 test, 我们看最开始 test 呢,获得警告框的文本,所以呢,我们把它拿到,这时候呢,我们记记着要把它怎么退出, 右键单击,我们点击运行, 哎,看到出现了吧,是把它给获得到了吧?单击了,好,那这是我们现在返回文字信息, 然后接下来呢,我们再看返回文字信息,刚才返回文字信息之后呢,怎么办呢?那个警告框啊,没有去消除,那我们现在 alert in for accept, 接受警告框,就是点击确定吧, 接受警告框,好,来,我们这时候呢,右键单击,点击运行, 点击确定了吧,哎,就是关闭掉了,所以说呢,这是接受,然后我们这个里边呢,加上 super 一, 一定要注意中英文的状态。一,然后我们把它组织掉,我们来一个取消啊,取消 alert, 我们这里边 alert in four dismiss, 这个叫做解散,解散警告框好, sleep。 一,前面这个注视掉,因为他们两个不能同时存在啊,所以呢,我们要把前面那个注视掉, 弹出 好起数。其实在看到了我们这个操作完了之后呢,就说我们把我们在刚才介绍的 accept 和 dismiss 这两个已经 讲到设计的这个方法, test 我们也设计到了,那接下来呢,我们再看下一个,下一个呢,就说我们是他 点击它,点击它之后呢, test 方法肯定能获得它是没有问题的。 accept 呢,是点击确定, dismiss 呢,是取取消框,对吧? confirm, 它们两个呢是不同的,我们看一个代码啊, 这里边你会看到我们仍然右击右键单音看源代码,这个是 alert, 这是 conform, conform, 这两个是不同的,所以说呢,我们要做一下验证,也做同样的案例, 哎,我们这个复制过来前一个呢,我们组织掉内容没有过多的变化,过多的变化,这个里面变化呢,就是我们要换成这个 confirm 来叉 pencil, 过来, 这是哪个按钮啊?这是这个,他们不是同一个元素啊,不是同一个元素,所以我们还要去进行修改,这是获得他的信息, 这是接受,这是取消,对吧?取消。好,我们一个一个来看,先来看货的信息和接受警告框,右键单击 点击,确定喽,这时候加了 sleeper, 一看到了,哈,你看已经出来了,好了,我们 再把它促使掉,我们再把解扇框打开。解扇框打开的时候呢,我们说现在呢,一个是他点击叉,一个是点击取消,这两种方式好,我们用键单击点运行, 点击取消了,好,结束返回过来了,这是我们涉及到了这两个啊,这两个我们按钮的不同,一个是 alert, 一个是我们的, 一个是我们的 antart, 一个是我们的 confirm。 那我们接下来再看到我们这里边呢,还有一个就叫它,还有它,它的操作里边 我们会看到呢,这里边是要让你去填写信息了,对不对?填写信息了,我们这里边呢,怎么去进行操作?怎么给他进行复值呢?在我们课件里边讲到过了,你可以通过 cind case 给他进行操作,对不对? cind case 进行操作。好,那我们来看, 那我们同样呢,我们要获得到这个元素返回过来哦,哎,就他吧, 哎,过来,我们要获得这个元素的叉 pens, 过来,我们把这块要变掉 no format 按钮,我们同样, 我们先来解散吧,这个接受我们就不再看了啊,接受就不再看了,我们来运行一下右键单击,我们点击运行 好,结束了,结束完了之后,你看他把他的文本获得了吧,请输入啊,请输入。好,这个拿到了之后呢,我们来看,我们要做一定的更改, 接下来点击它之后呢,会弹出一个文本文本框,我们要在这里边呢,给它输入内容。输入内容怎么去输呢?我们在课件里面介绍到呢,就是模拟元素和我们非常熟悉的一个方法,叫做 single case, 所以我们把它呢也组织掉, 我们接下来呢,这个叫什么?这叫输入内容, alert info, 点 send the case, 你看就有了。这里边我们输入谁呢? bella, 这个我们非常熟悉了,然后接下来呢, sleep 一来,我们看一下右键单击点运行, 掰了,对不对?可以了吧,我们应该什么?做了它 再把 touch 加上 点击确定,哎, 确定大家看到把 bala 传到底到下一个页面里边,所以这种呢,我们再回来看它的原码啊, 你看 bifi mod 输入,让你输入内容,把你写进去啊,写进去,然后传递给下一个值。 这就是我们在讲的我们的弹出框啊,这设计的按钮的这三种情况,我们的几个方法啊,几个方法的应用, 我们 ppt 上展现的,这里边第一个是 test set dismiss 啊,这个同样是应该是点啊,同样是点,然后这是我们的去发送消息,那讲到这里边呢,我们关关 对于我们的弹出框警告框的方法,在 smile 用到的,我们就讲到这里了,我们这一套视频课程呢,有配套的书籍,两者结合起来学习呢,效果会更佳。这一讲呢就讲到这里,谢谢大家。

现在我们来一起学习十年内的自动化中啊,有的时候会碰到的这种弹出对话框,弹出对话框啊,大家可以打开我们教程上指定的这个网址,点击他, 那么常见的三种弹出对话框呢,注意这三种对话框是浏览器弹出的原声对话框啊,那么这种对话框啊,我们点分别点击一下,大家看一下啊,对应,我点击三个按钮,就会对应弹出三个对话框,我们看看他们区别啊,都。首先第一个 alert 啊,大家注意这个对话框,大家注意,特别注意这个下面这个按钮的个数啊,是什么?这是第一个, 这是第二个,你看是不是比刚才多一个啊?这是第三个啊,不但多,不但按钮多一个,而且呢,他还多了一个输入款啊,那么这个呢, 就是常见的三种类型啊,第一种,这个阿乐的类型是干嘛的呢?这种阿乐的类型啊,就是通知信息啊,就是这种对话框只是一种通知啊,比如说你点一个操作,他提醒你啊,底下要干嘛了,对不对?让你确认一下,知道啊,你点 ok 就表示你知道了啊,一个重要的信息要告诉你,那么 confirm 呢 啊,空分的是要你选择的啊,通常是什么啊?比如说看我们这个网站上的描述啊,比如当管理员在网站上啊,你选择一个操作,删除了一个账号, 那么这个时候呢,那系统中就不能一下子把它删掉啊,对不对?他可能是你误点了呢,对不对?所以他要你确认一下啊,就会弹出这种 confirm 啊,就这种类型的对话框,让你确认啊,你是不是真的要干嘛干嘛?对不对?如果你点 ok 就是确认点 kiss 就是取消,可能是误操作了, 那么还有这个 problem 呢,就是啊,他有些操作啊,需要你提供一些信息才能继续的,比如说我们这个啊,网站上写的啊,比如说管理员在界面上选择删除账号的时候,那这个时候呢啊,这是要要去啊,这个口,这是要确认的, 我刚才说的这个 prompt 呢,是下面这个啊,这种就是比如说你当管理员在网站上要给某个账号延期,那么到底延多长时间呢?那这个时候就会弹出一个对话框啊,让你啊输入啊,具体的一个延期时间啊,所以说这三种啊,都不一样, 那么我们一种一种的来看啊,先看第一种 alert 这种对话框啊,就是假如说我们做自动化的时候啊,我们确实要点击一个操作, 那么这个操作呢,完成之后呢,系统可能会有个提示,对不对?那么有的时候呢,我们也可能会要做这几件事情。第一个呢,你可能要检查,比如说他的提示是否正确啊,这个提示信息是否跟预期的啊一致。 对,找自动化的时候做的事情啊,那我们怎么样获取这个上面啊,这个提示的这些信息呢?把这个文本获取回来呢 啊,这是一个问题。然后还有呢,就是说这个题是弹出来之后,那么你要进行后续的操作,你必须要点 ok 啊,对不对?把这个对话框去掉啊,不然的话你你看如果 ok, 不点一下,你这个界面上别的地方都操作不了。 所以说这两个问题,第一个怎么样?获取信息怎么样?第二个怎么样点击 ok 按钮,看我们教程上写的啊,呃,要点击 ok 按钮呢,是 用思念那么提供的 web 加入对象呢?也大家看还是 switch two 啊,我们前面已经学过思维奇兔 frame switchy to window, 那么这个弹出对话框呢,就是 switch to alert 啊,注意这个点啊, alert, 然后呢表示点击 ok, 就是调用它的 accept 方法就行了啊, accept 的方法啊, 那么怎么获取这个弹出对话框的这个文本呢啊,这种话要做到是外部加我对象还是思维去吐 alert 啊,获取 alert 对象的 text 属性啊,就可以了啊, text 属性,比如说下面这边呢,有一个例子, 那么这个势力代码呢,就是告诉我们啊,怎么样去点击啊这个阿勒特对话框的这个 ok, 怎么样获取文本啊,那么前面呢,就打开网址,那么下面这个呢,就是点击这个 第一个按钮啊,他有个 id 啊,他有个 id 叫 b 一,对不对?很好操作啊,直接根据 b 一找到这个 id, 然后点击他,那么点击他就会弹出对话框啊,你看他用 sweeteet to alert a text 打印出对话框的提示信息, 然后点击 ok 呢,再用 switch two 的 alert accept, 点击啊这个 ok 按钮。我们可以把这个代码呀,单步的执行一下,给大家看一下,比如说我们在这边加一个断点,我们来执行一下, 那我们程序停在这了啊,大家看一下啊,然后呢,我单步执行这行代码,那么执行这行代码起到什么作用? 就是根据 id 找到这个啊,第一个元素啊勒特,然后点他,对不对?那照你说应该弹出一个对话 框来,我们来看,是不是这样啊?是的,弹出对话框来了啊,然后呢,我们接着呢,大家看这行代码,当前高量这行代码要干什么? 要打印出这个对话框上面的这个 text 的文本信息,就是我们语气应该是现在和白黑语一起学拍人啊,都输出的在这,在这个空手这个栏啊,点这个标签页啊,他会在这里面打印出来,好, 你看现在是不是现在开始和白与黑一起学拍摄,对吧?啊,一起学拍照啊,然后呢,接下来呢?接下来没有代码了啊,待会我们可以啊,让他运行完,这样就结束了。 那么接下来呢,我们再来看这个 cofe 弹出框,就是要用户确认的是这种弹出框,这种弹出框和刚才相比, 这个点 ok 获取文本啊,操作是一模一样的,唯一不同就是怎么样点坑手啊,怎么样点坑手?那么这个怎么点呢?看我们的教程啊,点 ok 还是用个 cap 的获取文本还是用点 text 啊?刚刚前面一样,那么 怎么点看守呢啊?注意就是 switch to alert 的这个,主要你代码只表达是执行高量,我把这个地方圈起来,执行到这个地方呢,他会返回一个 alert 对象啊,一个 alert 这种类型的对象,那么他有个方法叫 dismiss 啊,就是就相当于点 cass 啊, dismiss 就是 解这个去掉这个对话框,解散的意思啊,去除的意思就相当于点了看手,大家看下面的代码的例子, 那其实呢, 前面的代码跟我们刚才那个 alert 对号框是一样的,其实我们要多的一个是什么呢?就是点击这个,把 accept, 我们把它换成啊, dismiss 啊, 换成 dismiss, 我们试一下啊,这个效果,那么当当然了,大现在的这个 id 啊,这个对话框啊,他第二个叫 b 二啊,所以说我们的代码呢,这边要换成 b 二啊,就是就这些改变。然后呢我们来试一下啊,也是单步直行 啊,这是我们打开的窗口。然后呢,首先啊,点击 b 二,就点击空缝啊,弹出对话框,这样呢,弹出对话框了,对不对?他有确定和取消,因为这个是中文, 就叫确定要取消,英文就是 ok 和 canso 啊,大家注意啊,为什么有人觉得是为什么不是 ok 和 canso 呢?因为我这边打重新打开这个 profile, 他是以操作系统啊,是我 一个全新的一个 profi, 所以说呢,我操作系统是中文的,他这边就确定取消,我原来把它另外一个这个浏览器呢,我把它设为英文的语言了,所以它显示的是英文的这个啊,提示 大家不要觉得奇怪啊,那么不管确定取消也好, ok, cancel 也好,操作方法是一样的啊,比如说我们下面这一行啊,我们要打印出当前的这个啊, 这个对话框的这个文字内容啊,我们让他打印出来,那做法呢,是一样的,来看一下我耽误咨询一下啊,打印在空手里面 看啊,还是你确定要和白云会一起学拍的吗?对不对?然后呢,下面呢,这个 dc miss 就不一样了,是取消啊,点击取消,这边点击取消以后呢,这边会打印出一行话来啊,你取消了操作啊,我点击一下 啊,你看是取消操作,不是确定操作对不对,如果我点确定的话就是确定啊,说明我刚才这个 dismission 确实是取消了啊, 那么我们再来看最后一个 prompt 啊, prompt 呢,前面不一样的就是你,那他需要你,他会弹出这个对话框呢,有个输入框让你输入一些信息,那显然问题就是你怎么输入,那么关于这个获取文本怎么点? ok, 怎么点 cancer, 跟前面是一样的啊, 文本点 text 属性, switch to alatta 点 text 对吧?那么 ok 呢,就是 switchto alata 的那个 alata 对象的 accept cancel 呢,就是 gaspin, 这跟前面是一样的啊,那不同的就是多出来的一种操作,就是你怎么输入呢? 看我们这个网站上写的啊,要输入就是吊用 sand kiss 方法输入啊, sand kiss, 当然你要先示威去图 alert, 然后是现在开始啊,那么我们看下面这个代码啊,首先找到 b 三这个按钮,点击他,点击他弹出对话框呢里面啊,注意啊,他这边呢,你看他先示威去他 alert, 就获取这个 alert。 对下啊, 其实我们前面的这个地方也你主要是我们直接一下子就操作完了,你也可以用一个变量把这个表达是存起来,对不对?然后就用变量的 accept 也是可以的啊,那么这边大家看一下啊,这个里面一样啊,根据这个阿拉特对象的 text, 就是获取对话框里面的文本啊, standing kids 就是输入内容 accept 呢,就是啊, 点下来点 ok 啊,然后呢,这边为了演示取消啊,他又重新点了这个,又找到这个 id, 这个十三的那个按钮啊,又重新再点他一下,就再把他点出来,然后呢这次不输了,直接点取消了啊,他这个视力代码就这个意思啊,我们可以把这边拷贝下来 啊,最主要就是什么也没什么,最主要就是 santa kiss, 对不对啊?乐特的 santa kiss 啊, 把这边烤一下,或者我们整个烤一下运行一下吧。 啊?我这边叫 wd, 他叫 drive 啊,改成 wd 一样的 啊,我们还是来单步执行一下,这边加一个断点,第八个一下, 大家看啊,那么首先按 b 三弹出对号框,对不对啊?这不是直行完了就输入了啊,就让用户输入了。 然后呢下面啊这个思维奇图,阿拉特这边没有什么实质的,这个就是看起来没有什么实质的效果啊,然后这个 printer 啊,就是打印这个内容啊,打印在这个输入框里面啊,无非就是把这 这样的文本给打印出来啊。啊,这个打印的内容就是输入你想学习的拍摄课程,跟这边是一模一样的啊,那么接下来呢,我们再点下一步 cn k 子,就是输入这个自动化的,呃,输入这个就是在这里面填入的内容,我这边是外部自动化实体店啊,这样的, 注意,这个两个呢要注意啊,你看可能你看不到,但是他其实这两步要一起运行完了,他才能输入成功啊,见面他你才看到输入成功啊,那么接下来呢,你看我输入成功之后呢?我的这个,我的这个 浏览器前端啊,他会把你输入内容呢显示在这里啊,这就是我输入的内容,对不对啊?输入内容,然后下面呢就是没什么好讲的了啊,下面就没什么好讲的了啊,下面这个输入内容,这个是 xf 的,就点 ok 了,那么现在 这个下面呢,就重新再把它点出来,相当于再把它点出来,然后干嘛呢?我这边是把它取消啊,就就是没死啊,就跟前面一样的,就相当于点这个取消按钮, 那就点了取消,这边显示取消操作。所以说啊,我们对这个这种对话的话,我们用 send keys switch to alert 的这个 alert 对象的 send keys 方法输入信息啊,再再调用 accept 提交就可以了。 关于这个弹出对话框呢,我们要注意啊,我们这边我们的网站上最后写的这段话啊,有些弹窗并非浏览器本身的原声的这种弹出框好了这款啊,而是一个 html 的对话框,注意啊,我们前面这个 弹出对号光他千万,大家千万注意,他并不是 htm 的内容,对不对?你能去用向右键点击去检查它里面的元素吗? 不能,因为他本身不是 htm 网页的一部分,所以说你没办法右键点他去啊,右键点击去查看他的这个元素内容啊,只要这个界面在的时候,你这边你看他只要这个对话框弹出来的时候,你这边点这个都是点不动的,有没有发现 啊,这个界面,因为这个玩意他不是来去贴面的一部分啊,你也没办法右键点击去查看他的元素内容啊, 没办法。那么而有些对话框呢,比如说这个网站啊,我们这个找的是 w 三十一的这个网站啊,比如说我们点这个按钮啊,这个弹出来对话框跟我们前面讲的这个对话框完全是不同性质啊,这个对话框是浏览器的原声的一种,弹出 的一种对话框,他不是 htm 内容一部分,我再重复一下啊,而这个呢,他就是 htm 的内容的一部分啊,比如说我右键点击,你看这边就可以查看他的内容,对不?因为他本身就是 htm 的一部分,对不对?你可以点击这样去查看他,对不对?你可以发现他就是一部分这个 htm, 所以说这样的对号框如果你要操作它,假如大家有个什么 ok 按钮的话啊,那你这个怎么做呢?啊?那就这就是我们前面讲的这个,呃, htm 的这种操作方式,你完全可以啊,完全可以去 点击啊,完全可以。是啊,根据我们前面讲的,根据他的元素特征,比如说有 id 啊,找到 id, 然后再去点击他跟我们进刚才讲的这个是不一样的,这个他因为根本就不是 htm 的元素,所以你没没办法去查看他 内容,去根据 htm 的这个,比如说这个东西有个什么 id 之类的去选择到,他选择到的他在点击他,因为他压根就不是 htm 元素,他是浏览器原声弹出来的对话框,大家一定要搞清楚。

在 cineme 中如何处理多窗口的问题呢?需要切换吧,但具体怎么切换不知道。这样啊,这个多窗口之间跳转的处理啊,在实际 cineme 自动化测试的时候经常遇到, 比如说点击一个链接,这个链接会在一个新的 tab 页打开,然后接下来要查找元素。在新的 tab 打开的页面上,需要先将 driver 切换至 window 才会进行定位。步骤呢如下,第一操作,打开新界面后获取所有的 window handles 第二,按照新页面的顺序通过所引去切换。 三,如果 window 太多,则可以便利得到 windowhander 死,然后按照 title, ul 等其他信息进行判断切换。你明白了吗?

用 sleenian 做网页自动化操作时,会遇到二维码验证等情况,如果每次都重新启动浏览器扫描二维码就很麻烦。本视频讲解,如何在已经打开的指定浏览器运行,避免二次扫描二维码等验证。右击 crown 浏览器图标,复制起始位置路径, 编辑 pf 环境变量,将复制的地址添加到环境变量。 用 cmd 打开终端, 输入一下命令, 启动新的浏览器访问测试网站。 remote booking port 是指定端口,只要没被占用就可以。 user data deer 新建一个目录,储存运行浏览器的运行数据。代码讲解,导入 web driver, 倒入 options, 导入 services, 新建 options 对象,用于配置选项, 指定运行的端口与 cmd 运行的端口一致。 新建 service, 意向储存 chromidriver 的路径。 新建 chrome the web driver 对象,其中配置下按照上面配置的运行 打印当前连接 打印浏览器标题 下方是执行后的效果。


那么如何获取标签的 id 和叉 pas 呢?哈喽,大家好啊,如果你需要经常在浏览器进行一些重复的操作,那么这个视频或许会对你有帮助。在讲解之前需要先安装第三方库 sleening 以及骨骼浏览器驱动, 驱动可以在这个网址进行下载,但是要注意一定要下载和你浏览器对应的版本。接下来实现一个简单的功能,分为四步,打开浏览器,访问百度官网,输入搜索关键字,回车进行搜索。在正式开始之前,需要跟大家说明一下,我这里使用的 selinim 的版本是四点八点二, 大家在网上看到的 selling game 教程可能还是旧版本的,新版本的许多用法都是不一样的。首先导入要用到的模块,第一步是打开浏览器,也就是获取浏览器对象。先通过 service 加载驱动程序,然后通过 web drive 点 chrome 来实例 净化浏览器对象,这两行运行完就会自动打开浏览器了。第二步是访问百度官网,使用浏览器对象的 get 方法传入网址即可。大家注意看,在这里使用了 timed sleep, 这是为了等待页面加载完再去寻找元素,因为有的页面需要等数据请求完之后才能把元素全部渲染完成, 如果在渲染之前你就去找元素的话,那肯定是找不到的。第三步是输入,搜索关键字,首先要获取到输入框元素对象有三种常用的方式,包括标签的 id、 叉 pass 以及 class name。 因为这个例子中输入框只有一个标签,所以使用的是 found element。 另外还有 found elements, 它会返回一个列表,是用来获取多个元素标签的,一般是和 class name 结合使用。那么如何获取标签的 id 和叉 pass 呢?我们先打开百度的官网, 按下键盘的 f 十二,选择 amens, 点击左上角的箭头,然后在页面中点击输入框右侧就会定位到对应的标签上,也就是这个音铺的标签, 可以看到它的 id 是 k w, 点击鼠标左键,选中这个标签,然后点击鼠标右键找到 copy, copy 下面就可以获取到相对叉 pass 以及绝对叉 pass。 获取到输入框元素对象之后,使用该对象的 send kids 方法传入搜索关键字,最后再按下回车键,我们运行一下。 好了,如果这期视频对你有所帮助,别忘了一箭三连,谢谢大家。

selina miui 自动化测试只显示等待?二, 我们来看一下这个艾伦曼特 tobe 可乐,这个 abo, 这个显示等待条件,他的含义呢?是判断啊,一个元素啊,是不是可以点击,如果可以点击呢,条件就成立。那么像现在写的这个例子的话呢,他整个这一行弹幕的含义呢?就是 设置了等待时间呢五秒,然后呢每个零点五秒判断一下 id 等于八千三百的元素呢,是否可以点击,可以的话呢就去点击,这就是这个哈显示的条件的含义。好,我们可以执行一下。 本次知识输入就到这里啦,你学会了吗?还有哪些疑问,评论区留言将一一为大家解答。


三、零念母无法定位元素元音及解决方法第一种,元素定位,表达式写错。解决方法,将表达式在页面中进行定位验证, 找到表达式和定位到的元素进行匹配。第二种,页面未成功加载元素。解决方法,添加等待,三种等待方式可供选择,强制等待、显示等待和隐示等待可以结合具体场景做应用。 第三种,元素在 fm 中,解决方法,切换到 fm, 然后再进行元素定位。第四种,元素动态发生变化。解决方法, 可以通过附近或子元素进行当前元素定位。第五种,已经识别到,但是无法进行操作。解决方法,执行页面元素对应的操作,比如点击下滑。更多测试资料,点击下方链接领取。

这一讲,我们给大家聊一聊司令面的三种等待方法。司令面呢,提供的等待方法呢,有三种,他们分别是强制等待 sleep、 隐性等待和显示等待外部抓位的。我们简单做了一个小的总结, 看呢,在 sleep 我们并不推荐,因为当我们的代码执行到 sleep 这一行的时候呢,你设置成三秒和五秒,那代码在这一行呢,要去等待相应的时间,所以他比较傻,也叫做强制等待。 sleep 呢,常常应用在调试环节,在敏捷测试的迭代测试过程中,包括生产环境中,我们要避免 sleep 的应用。第二种方法呢,叫做隐性等待,隐性等待它又叫做智能等待和页面记得等待,它是在检测页面上的某一个元素,如果没有出现的时候,它会 等待多久,所以说理性的呢,代码应该放在我们的代码的顶部。第三种方法叫做显示等待,外部抓为特,外部抓为特呢,是对元素级别的判定,我们这是一个比较常用的方法,他可以判断某个元素等待的时间是多久,而且在 等待时间过程中会每间隔多长时间,所以显性等待呢,使用的次频率呢,会比较高一些。 那我们在暗中呢,经常看把隐性等待和显示等待的结合起来利用,那在结合起来使用的过程中呢,我们要他们背后的一个逻辑,他们往往要遵循两个原则,第原则一就是就近原则, 与元素距离的相近的就是 web 抓 wet, 所以 web 抓 wet 呢,先进行生效。第二个原则呢,叫做时间大的原则。如果 说在我们的自动化脚本之过程中呢,又有隐性等待,又有我们的显示等待,那在这里边当某一个元素检测不到的时候,会选元素的属性 没有判断出来的时候呢?这时候呢需要等待多久?如果说隐性等待的时间比较久,那我们就遵存隐性等待的时间。如果说显性等待的时间比较久,那我们就遵循显性等待所设置的时间。这三种方法各位小伙伴你们掌握了吗?

selena 呢,在二零二一年呢,发布了四点零的初始版本,那 selena 呢在陆陆续续呢后续呢发布了一些稳定版本,大家来看一下,我打开我的 cmd 框,然后我搜一下, 大家看到我的版本呢是四点五斯里面最新的版本呢是四点七点二,那在斯里面四点零里边呢,给我们带来哪些变化呢? 在 cinema 四点零之后的版本的原来的 fate admit by id 的这种方法包括插绊子的方法呢,不再做支持 他知识的方法呢是 fight element, 所以呢要把 by 引入进来。那我们运行一下,来看一下,大家观察结果, 带头看到结果运行成功。所以说呢,大家你做好了切换到斯里面四点零的准备了吗?

我喜欢, 就这样吧, 谁的 金鱼还活着?哈哈哈, 宗介宗介波妞,我是宗介波妞,喜欢宗介, 你带她过往西方。各位大哥 啊, 宗介波妞,早安,宗介早安。