Locator

服务器的学习(pink 笔记)

我的梦境 提交于 2020-08-11 19:34:48
1. 服务器端基础概念 1.1 网站的组成 网站应用程序主要分为两大部分:客户端和服务器端 客户端:在浏览器中运行的部分,就是用户看到并与之交互的界面程序。使用HTML,CSS,JavaScript构建。 服务器端:在服务器中运行的部分。负责存储数据和应用逻辑。 1.2 Node网站服务器 能够提供网站访问服务的机器就是网站服务器,它能够接收客户端的 请求 ,能够对请求做出 响应。 1.3 IP地址 互联网中设备的唯一表示 IP是Internet Protocol Address的简写,代表互联网协议地址 1.4 域名 由于IP地址难于记忆,所以产生了域名的概念,所谓域名就是平时上网所使用的网址。 http://www.itheima.com => http://124.165.219.100/ 虽然在地址栏中输入的是网址,但是最终还是会将域名转换为ip才能访问到指定的网站服务器 1.5 端口 端口是计算机与外界通讯交流的出口,用来区分服务器电脑中提供的不同的服务。 1.6 URL 统一资源定位符 ,又叫URL(Uniform Resource Locator), 专门为标识 Internet 网上资源位置而设置的一种编址方式,我们平时所说的网页地址指的即时 URL。 URL 的组成 传输协议://服务器IP 或 域名:端口/资源所在位置标识 http://www.itcast

Addressable如何删除旧资源

ぃ、小莉子 提交于 2020-08-11 12:51:08
1)Addressable如何删除旧资源 ​2)Addressable如何更新Catalog文件 3)Editor在Android平台下加载AssetBundle的疑问 4)资源被打成AssetBundle后,图集被多次加载在内存中 5)Gfx.WaitForPresent耗时与GPU的关系 这是第209篇UWA技术知识分享的推送。今天我们继续为大家精选了若干和开发、优化相关的问题,建议阅读时间10分钟,认真读完必有收获。 UWA 问答社区: answer.uwa4d.com UWA QQ群2:793972859(原群已满员) Addressable Q1:目前计划使用Addressable来实现资源热更新,实际真机测试发现当资源更新后,旧的资源Addressable并不会把它删除,同时可以看到App占用的数据文件会越来越大。请问有什么办法可以把指定的Group或Label的资源删除吗? 试了Addressable.ClearDependencyCacheAsync也不行。实际测试这个接口只能删除最新版本的资源。当本地已经是最新版本资源时这个接口确实有效;但是如果本地需要更新资源时,这个接口应该也是尝试去删除最新资源,然而本地并没有最新版的资源,所以大概就无效了。 A:调用Addressable.ClearDependencyCacheAsync实质是调用了 “Caching

网页Html5开发培训机构浅析html是什么

泄露秘密 提交于 2020-08-11 11:22:06
  在学习Html5开发培训课程之前上海非凡教育Html5开发培训老师先来介绍下什么是html,HTML的英文全称是 Hyper Text Markup Language,即超文本标记语言。HTML是由Web的发明者 Tim Berners-Lee和同事 Daniel W. Connolly于1990年创立的一种标记语言,它是标准通用化标记语言SGML的应用。用HTML编写的超文本文档称为HTML文档,它能独立于各种操作系统平台(如UNIX, Windows等)。使用HTML语言,将所需要表达的信息按某种规则写成HTML文件,通过专用的浏览器来识别,并将这些HTML文件“翻译”成可以识别的信息,即现在所见到的网页。   HTML超文本标记语言是一种标志性的语言。它包括一系列标签.通过这些标签可以将网络上的文档格式统一,使分散的Internet资源链接为一个逻辑整体。HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字,图形、动画、声音、表格、链接等。   超文本是一种组织信息的方式,它通过超级链接方法将文本中的文字、图表与其他信息媒体相关联。这些相互关联的信息媒体可能在同一文本中,也可能是其他文件,或是地理位置相距遥远的某台计算机上的文件。这种组织信息方式将分布在不同位置的信息资源用随机方式进行连接,为人们查找,检索信息提供方便。   自1990年以来

基于python2+selenium3+pytest4的UI自动化框架

大兔子大兔子 提交于 2020-08-11 08:08:39
环境:Python2.7.10, selenium3.141.0, pytest4.6.6, pytest-html1.22.0, Windows-7-6.1.7601-SP1 特点: - 二次封装了selenium,编写Case更加方便。 - 采用PO设计思想,一个页面一个Page.py,并在其中定义元素和操作方法;在TestCase中直接调用页面中封装好的操作方法操作页面。 - 一次测试只启动一次浏览器,节约时间提高效率(适合公司业务的才是最好的)。 - 增强pytest-html报告内容,加入失败截图、用例描述列、运行日志。 - 支持命令行参数。 - 支持邮件发送报告。 目录结构: - config - config.py:存放全局变量,各种配置、driver等 - drive:各浏览器驱动文件,如chromedriver.exe - file - download:下载文件夹 - screenshot:截图文件夹 - upload:上传文件夹 - page_object:一个页面一个.py,存放页面对象、操作方法 - base_page.py:基础页面,封装了selenium的各种操作 - hao123_page.py:hao123页面 - home_page.py:百度首页 - news_page.py:新闻首页 - search_page.py:搜索结果页 -

appium---封装定位(2)

ぃ、小莉子 提交于 2020-08-10 17:39:33
  前面已经写过一个封装定位了,但是可能在yaml中书写的时候过于繁琐,以及如果代码基础较差的同学,也没有办法进行编写测试用例。就重新进行封装一次定位 页面元素写入yaml 上一篇写的yaml可能有点杂乱,这次我们换个写法 把一个页面上元素编写上去,这里没有写验证码的操作了。 # appium.yaml LoginPage: dec: 登录 locators: - name: 用户名 type : id value: com .taobao.taobao :id / aliuser_login_mobile_et - name: 密码 type : android value: resourceId ("com.taobao.taobao:id/aliuser_register_sms_code_et") - name: 登录按钮 type : className value: android .widget.Button 我们可以进行通过yaml读取,如果猜的没错的话,肯定是列表包含字典形式。 # read_yaml.py import yaml import os class GetYaml(): def __init__ (self,file_path): # 判断文件是否存在 if os.path.exists(file_path): self.file_path =

Web自动化测试:POM设计模式的实现

霸气de小男生 提交于 2020-08-10 16:55:58
关于pom设计模式(project Object model/PageObject),一种底层、逻辑、用例的分层,在项目还没有开发出来时,就可以开始写UI自动化脚本了,在开发完成后,再进行元素定位的适配以及调试;而且也可以多人共同维护开发脚本,更方便大家合作。 这一节主要来介绍一下如何从零开始搭建这几个层级。 一、driver层的封装 这一层主要是对于webdriver方法的封装,这里来举一个栗子,最常用的定位方法,之前讲过统一定位方法的三种传参格式:webdriver的所有定位方法,使用find_element()方法通过BY类、字符串、元组三种方法传递定位类型和数据,这里我使用元组的形式(例如locator = ("id","name_box"))来传递参数。 1.1 定位元素方法封装示例 这个定位元素的公共方法中,加了很多东西;如果每次定位的时候写这些异常捕获、打印操作的话,那么程序会非常臃肿,所以需要单独提出来,每次需要定位的时候统一调用这个方法。 有一个入参locator,格式为("定位类型","定位参数值"),返回我们所定位到的元素 加入了元素等待,并判断该元素是否存在 对于关键信息的打印输出,方便定位监控 加入了异常捕获,定位失败后可以继续执行程序 def find_element(self, *locator): try: print("定位元素:%s" %

小实操(6):利用正则来解析url参数

时光毁灭记忆、已成空白 提交于 2020-08-10 09:50:08
** 实例: 利用html表单和js的数学对象及函数做一个有验证码的简单登录表单 实操:利用日期对象和方法以及其他相关知识实现简单的钟表功能 小实操(3): 利用键盘事件实现小人快跑 小实操(4):实现飞机的移动并且能够发射子弹 。。。。。。。 js学习中的小实操(目录) ** 关注小文我们一起学习进步。 实操 今天同样是对前面学习的知识进行巩固和训练。今天学习的是一个解析url参数。 首先url是什么捏? 含义: 统一资源定位符(Uniform Resource Locator,缩写为URL),又叫做网页地址,是互联网上标准的资源的地址(Address)。 今天的训练就是利用正则来解析我们的url参数。 举个栗子: 首先我们随便打开一个网页找一个地址复制过来。 url地址: https://www.sogou.com/sgo?query=%E5%BF%AB%E4%B9%90%E6%98%9F%E7%8C%AB&_ast=1594299256&_asf=www.sogou.com&w=01029901&pid=sogou-clse-60a70bb05b08d6cd&duppid=1&cid=&s_from=result_up&sut=14870&sst0=1594299280933&lkt=0%2C0%2C0&sugsuv

Spring Cloud Gateway设置session超时时间

允我心安 提交于 2020-08-09 22:27:31
在使用Spring Cloud框架的时候,Http的请求首先会到达Spring Cloud Gateway服务,并与之建立session对象,但是在默认情况下,请求结果之后,session会立刻过期。有些业务场景可能会在session中存储一些数据,比如登陆状态,如果登陆之后,长时间没有访问,再次访问的时候,让用户重新登陆等,都需要控制session的空闲时间。在Spring Cloud Gateway中,默认管理session的类是 InMemoryWebSessionStore ,它里面的内部类 InMemoryWebSession 实现了 WebSession 接口。在这个接口,有两个方法,有来设置和获取session的最大空闲时间: @Override public void setMaxIdleTime(Duration maxIdleTime) { this.maxIdleTime = maxIdleTime; } @Override public Duration getMaxIdleTime() { return this.maxIdleTime; } 所以,要想修改它的空闲最大时间,就需要调用setMaxIdleTime方法进行设置。 另外,session过期检测的方法如下: @Override public boolean isExpired() {

URL的Path.Combine吗?

只谈情不闲聊 提交于 2020-08-09 16:32:03
问题: Path.Combine is handy, but is there a similar function in the .NET framework for URLs ? Path.Combine 很方便,但是.NET框架中是否有用于 URL 的类似功能? I'm looking for syntax like this: 我正在寻找这样的语法: Url.Combine("http://MyUrl.com/", "/Images/Image.jpg") which would return: 这将返回: "http://MyUrl.com/Images/Image.jpg" 解决方案: 参考一: https://stackoom.com/question/1Yzx/URL的Path-Combine吗 参考二: https://oldbug.net/q/1Yzx/Path-Combine-for-URLs 来源: oschina 链接: https://my.oschina.net/u/4438370/blog/4310300

selenium常用的三种等待方式

别来无恙 提交于 2020-08-08 00:47:02
一.强制等待 使用方法:sleep(X),等待X秒后,进行下一步操作。 第一种也是使用最简单的一种办法就是强制等待sleep(X),强制让浏览器等待X秒,不管当前操作是否完成,是否可以进行下一步操作,都必须等X秒的时间。 缺点:不能准确把握需要等待的时间(有时操作还未完成,等待就结束了,导致报错;有时操作已经完成了,但等待时间还没有到,浪费时间),如果在用例中大量使用,会浪费不必要的等待时间,影响测试用例的执行效率。 优点:使用简单,可以在调试时使用。 示例:打开登录页面,等待3秒,进行登录操作,如果3秒内登录页面没有加载完,下一步操作就会报错。 二.隐式等待 使用方法:implicitly_wait(X),在X时间内,页面加载完成,进行下一步操作。 第二种方法是隐形等待,其设置了一个最长等待时间,如果在规定时间内网页加载完成,则执行下一步,否则一直等到时间结束,然后执行下一步操作。 缺点:使用隐式等待,程序会一直等待整个页面加载完成,才会执行下一步操作; 但有时候页面想要的元素早已经加载完成了,但是因为网页上个别元素还没有加载完成,仍要等到页面全部完成才能执行下一步,使用也不是很灵活。 优点:隐性等待对整个driver的周期都起作用,所以只要设置一次即可。 示例:打开登录页面,等待页面加载完成后,如果30秒内,页面加载完成,就进行登录操作,不再继续等待