Node.js结合selenium做web自动化测试第二课

hello 小伙伴们,大家的CukeTest一定玩的很开心吧

第二课我们主要围绕两个内容来进行

我们昨天运行了一个小demo,演示了bing中的一个搜索场景 

不过大家是否有这个疑问,如果我想要运行bing中多个不同的搜索怎么办

聪明的你一定会想到,当然下面添加新场景啊

没错,这种方法当然可以,但它肯定不是最好的,为什么呢

脑补一下这个画面:假设我们需要测试Bing下的五十个不同关键字搜索,添加新场景,每个新场景下添加步骤,然后每个步骤再重新生成代码框架,再补充代码,一定加到你怀疑人生。。。

所以,怎么办?

这是我们今天的第一个内容:一个剧本下的多个场景

还是上面那幅图,看到这个小图标了吗,人家可不是摆设哦,不信你点一下试试

呀,下面怎么这么多选项

不要紧,我们只要第一个,第一个里面的场景大纲

没错,界面是会变成下面这样,场景下面会出现一个名叫“例子“的表格,就在这个表格上面右键选择“添加行到末尾”

根据大家想要的用例数随意添加,加好后会根据我们添加的参数执行程序,记得把之前程序中sendkeys里面的常量换掉(换成function里的函数名),才可以灵活读取参数

接下还是老套路,运行项目,报告出炉

一个剧本3个场景,没错,一个都不少,耶!

看完工具,接下来开始第二个内容,我们来说一下语言好了,Node.js的变量和函数声明

Node.js声明变量主要有三种方法,let,const,var,虽然都可以声明变量,但是用法总归是不一样的

let声明的变量作用于代码块

const声明常量,值不能再改变

var声明的变量范围较大,任一地方值改变都会改变

说这么一堆,大家懵圈了吧,说人话!

嗯,说人话,那就举个栗子吧,跟上脚步一起来

(1)let声明的变量作用于代码块

下面这两行代码很简单,作用就是把字符串123赋值给变量a

将a的值打印出来,结果是这样的,毫无悬念,是我们刚刚给它的值:123

下面我们将代码做一下修改

如果这样,打印出的结果会是什么呢?

结果不是123了

那作用于代码块怎么解释呢,再举个栗子

看看这段的输出结果

这就叫做let声明的变量作用于代码块

(2)const声明常量,值不能再改变

同样,我们先用这样一段代码赋一个值给变量b,这个值是字符串“good”

看一下运行的打印结果

嗯,没毛病!那下面我们把这个值再改一下看看

结果会像上面一样,输出新的值better吗?

我的天呐!报错了??

所以,const声明常量,值不能再改变,你变个试试,报错给你看

(3)var声明的变量范围较大,任一地方值改变都会改变

它和let声明的变量值都可以改变,那么区别在哪呢?

我们这样对比一下,同样的变量赋值,一个用var,一个用let

用var声明的打印结果


用let声明的打印结果

结果可以明显的看出let作用于代码块,var任一地方改变都会改变,所以我们更推荐用let来声明变量

另外大家需要注意一下,敲黑板,敲黑板

let在使用的时候,不能重复声明同一个变量,接着举栗子

一个代码块里,这样写,没问题

但如果这样写,肯定会报错,好奇的宝宝可以自己试一下噢

如果用var的话,上面两种写法都可以,所以说它作用的范围大呢

变量说完了,下面我们来看一看函数,其实函数呢,大家如果搞懂了变量,这个并不难理解,简单粗暴点的用人话说!好吧,只有举栗子了

这里声明了一个函数,getName,大括号里面是这个函数将要执行的操作:打印字符串'helloworld'的操作,也就是是相当于把console.log(‘helloworld’)的操作封装在这样一个方法里

那么单单这段程序去运行的话,会打印出我们想要的结果吗,赌十个棒棒糖,肯定不会,那怎么才能够运行呢,好办,加个调用函数

运行一下看看

大大的helloworld送给你

上面这个写着helloworld的栗子说的就是调用函数

既然今天也说过变量了,那我们也顺道看一下怎么把函数赋给一个新的变量吧

跟上面一样,先声明一个函数,getAge,里面的操作聪明如你肯定懂的,返回一个12的数值

接下来再走一波操作,眼熟吗,let赋值变量,变量名是xiaomingAge,变量值呢,就是我们刚刚定义的函数getAge,然后把这个变量值打印出来

结果就是返回值12吧,我不会骗你的

今天的知识点到这里,希望大家又打开了一扇新世界的大门

https://ke.qq.com/course/281565#tuin=173f40be

测试工具CukeTest下载地址http://www.cuketest.com/

更多精彩, 每周一到周五晚8:00-9:00,不见不散

你可能感兴趣的:(Node.js结合selenium做web自动化测试第二课)