后端开发工程师,曾就职于网易、腾讯。现在集度。
在Windows下我们可以通过在cmd中输入adb logcat相关命令来查看安卓设备上的log信息,这在PowerShell里也可以做到。所以方便做成一个脚本,以便复用。代码如下: function List($target) { if($target.
对于没有id,没有text,只有一个图标的疑难元素(ImageView),应该如何定位呢?拿人人网个人主页的设置按钮举例: 我最终是通过定位页面上可以定位到的其他元素,然后通过其他元素与疑难元素相对坐标的距离判断,从而定位到疑难元素的。
问题 打开re-sign.jar,将下载好的apk拖入re-sign.jar的界面进行重签名。重签名成功后,通过adb intall命令安装重签名后的apk文件失败。提示:Failure [INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION] 原因 通过在网上不断搜索,终于找到了问题的原因(见该篇文章评论中的10楼)。
对于web接口测试,做一下总结。 接口测试总结 1. 接口url格式:http://www.xxx.com/a/bbb.html; 2. 接口url后面接的参数格式:“?参数名=参数值&参数名=参数值”; 3. 要清楚不同的参数名分别对应有多少种参数值; 4. 要清楚不同的参数值组合分别对应有多少种接口返回结果(即访问url后返回的json对象)。
直接在浏览器中打开博客园的文件,可能会有乱码的内容。 用Python脚本可以将别人博客园的文件下载到本地,下面是个例子: import urllib,re url = "http://cdn.
将本地项目上传到Github 转载请注明出自天外归云的博客。 前提 已经下载了Git到本地。 创建Repository 首先登陆我的Github页面,在Repositories中New一个并起Repository name为你要上传的项目名,我的项目叫ForMyRenren,所以我创建的Repository name也为ForMyRenren。
开发与测试整体过程中的Git分支merge流程 Git分支merge之开发流程 首先在Gitlab上有个仓库存储着原始的项目代码,其中包含一个叫master的分支。然后可能按功能进行分配,由不同的开发人员分别将master分支拉出来改作其新的开发分支,比如叫func1分支、func2分支之类的名字。
准备工作 1、已经安好了Oracle VM VirtualBox管理器; 2、已经下载好了相应Linux发行版的iso磁盘镜像文件; 3、新建了对应版本的VirtualBox并按提示一路next; 4、在设置中的存储模块配置好iso磁盘镜像文件。
回家以后,发现电脑前的地面上有烟灰。我记不住是不是我抽烟时掉的了。当然,如果不是我掉的,就是别人掉的了。要是别人掉的,估计是坐在我这玩儿电脑的时候掉的了。查一下开机记录吧。打开终端,输入“last|grep reboot”,回车,看看上一次登陆是什么时候: 上一次的开机时间是我周日起床的时候,看来确实是我抽烟时不注意掉的。
[本文出自天外归云的博客园] 释道《道德经•第六十三章》 今听碧游宫通天教主讲道:“是以圣人犹难之,故终无难矣。”深有所感,遂查其出处。原文出自《道德经》,又名《老子》。 原文 为无为,事无事,味无味。
MySQL常用操作 前提条件:已安装MySQL。 学习目标:用一条sql语句写出A和B的剩余数量 AA表 BB表 以上为一道面试题,接下来由这道面试题来回顾一些数据库的基本操作。 登录MySQL sudo mysql -p,回车,然后输入密码即可,按ctrl+c退出登录: ...
假设桌面上有一个叫“data.txt”的文本,内容如下: {id='xxx' info='xxx' kk='xxx' target='111111' dd='xxx'}{id='xxx' info='xxx' kk='xxx' target='777' dd='xxx'}{id='xxx' inf...
转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ Android测试三要素 写Android测试用例有三要素,一是我们用的“安卓模拟器device”(用来显示UI),二是“uiautomatorviewer.bat”(用来定位UI上的元素),三是“Robotium”中提供的类(用来与UI元素进行交互)。
转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ TestNG+Selenium+Ant TestNG这个测试框架可以很好的和基于Selenium的web自动化测试结合在一起,实现把我们写好的自动化测试用例以自定义顺序执行。
搭建好Robotium的环境,大致就是下载安装jdk并配置环境变量,下载并打开Eclipse,下载安装Android SDK Tools并配置环境变量,下载安装ADT插件,创建并打开Android Virtual Device,下载、apk重签名并安装到该device,手动打开人人网应用没问题后环境就算是准备好了。
转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ 需求:在不同的测试用例中,对脚本中不确定的因素需要和用户交互来确定,比如选择哪个site,选择哪个web,选择哪个list。
转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ 将创建好的content type(若是跨web application需要事先publish content type,并在Monitor中跑和Content type同步相关的job,这里我写...
转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ 问题:有一些元素,无论是通过id或是xpath等等,怎么都定位不到。 分析:这很可能是因为你要定位的元素被嵌套在了当前页面的一个iframe元素中,Selenium对iframe中的元素有特殊的定位规则,WebDriver不能够直接进行定位。
转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ Sikulix(以前叫Sikuli)在Mac电脑的环境配置步骤如下: 1、从官网上下载Sikulix最新版本(目前为1.
转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ 环境:Windows Server 2012 EN(解决PowerShell控制台中文乱码问题:方法) 通过PowerShell处理RSS信息,直接通过Invoke-Webrequest命令获取到的内容中文乱码,原因是没有指定Encoding模式,而Invoke-Webrequest命令目前并不支持指定Encoding,所以只能把获取到的网页($url)内容保存到本地($filePath),然后从本地进行读取(根据不同方式可以选择性指定Encoding)。
下面是一段自动登录360传奇霸业游戏的脚本: from pymouse import PyMouse import time import webbrowser from pykeyboard import PyKeyboard url = "http://cqby.
今天研究了一下E-ICEBLUE公司的Spire for .NET系列产品。我们可以通过利用这个系列的dll库文件轻松的实现办公自动化的需求,而且不需要安装相应的办公软件。有关于Spire .NET系列产品的介绍戳这里可以看到。
无私分享两道百度作业帮的测试开发面试题!整理不易,请给赞~ 【第一题】一共有二十五匹马,五个赛道,每个赛道每次只能跑一匹马。问:最少多少次能选出3匹最快的马?(不能记录每匹马跑完全程所用的时间,只能通过比较谁先到达终点来判断两匹马的孰快孰慢) 思路如下: 1、前五次:25匹马,分成5组,每组赛1次,共赛5次——这样就能得出5匹马(各组的第一); 2、第六次:让这五匹马赛一次,取前3,淘汰这五匹第一马中的第四和第五(假设是第四组第一和第五族第一),比这两匹马慢的也都淘汰,共淘汰10匹马(第四组和第五组所有马)。
我的微信群——软件开发测试工程师交流群,欢迎扫码: 改键是一种习惯,比如在玩儿lol或者dota的时候。理论上玩儿什么游戏都可以改键。 做一个窗体(点击Install——应用改键,点击Uninstall——撤销应用): 窗体定义代码如下: using System.
接上一篇,经过反复的查看,最终从这篇文章中找到了一个可用的JSON接口,于是研究了一下中国天气网JSON接口的测试: 和上一篇XML接口测试的原理是一样的,只是需要安装一下Newtonsoft.Json: 这个就是传说中的JSON.Net!在项目右键点击“管理NuGet程序包”中搜索json.net然后安装即可,等到项目的引用中出现这个东西的时候就可以在程序里using Newtonsoft.Json了。
点击链接查看中国天气网接口说明,最近想研究一下接口测试,源于最近一次和某公司的技术总监(交大校友)谈话,发现接口测试的需求是比较大的,于是想要研究一下。 好不容易在网上找到了一个关于中国天气网的接口说明,就是上面那篇。
转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ 目的:批量的将SharePoint items变成records或者将records变成普通的items。
转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ 背景: 在SharePoint Central Administration->Monitoring->Job Definitions中我们可以看到所有的timer jobs,其中和Content Type相关的timer jobs有: 1.
转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ 实现过程:在本地创建一个local user并将该user添加到Administrators组中,然后在SharePoint指定site中添加该user,并赋予Full Control的权限。
转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ PowerShell脚本实现MMS group、termSet、terms的自动化创建: Add-PSSnapin Microsoft.
转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ C#中通过Selenium定位页面上的select-option结构,尝试了以下几种方法,均没有生效: //iw.
我用Selenium写了一个人人网相册备份工具,亲测通过。 需要输入你的用户名、密码、相册地址。 代码如下: using System; using System.Collections.Generic; using System.
猴子第一天摘了许多个桃子,先吃了所有桃子的一半,后又吃了一个;第二天又吃了剩下桃子的一半,后又吃了一个……第十天,剩1个桃子。问:猴子第一天摘了多少个桃子? 首先对“猴子吃桃”的过程进行正向推导,设:猴子第一天摘了N个桃子,第n天剩Ln个桃子。
《编程之美》284页,问题4.6:桶中取黑白球。 有一个桶,里面有白球、黑球各100个,人们必须按照以下规则把球取出来: 1. 每次从桶中拿两个球; 2. 如果两球同色,再放入一个黑球; 3. 如果两球异色,再放入一个白球; 问:最后桶里面只剩下一个黑球的概率是多少? 于是我开始分析,桶里装球,每次摸球是随机的,所以不能用队列和栈,那就用万能的动态列表来做桶吧。
首先创建一个项目,写一段待测的程序: namespace ForTest { public class Program { static void Main(string[] args) { } pu...
《编程之美》183页,问题2.14——求子数组的字数组之和的最大值。(整数数组) 我开始以为可以从数组中随意抽调元素组成子数组,于是就有了一种想法,把最大的元素抽出来,判断是大于0还是小于等于0,如果大于0就对除了这个最大值外剩下的数组部分进行递归: using System; using System.
转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ 问题1: 1.如果SharePoint item被添加了hold,通过UI界面来对SharePoint items解锁是比较折腾的。
在Mac环境下的自动化测试环境搭建这里有一篇亲测通过的文《mac下怎么搭建selenium python环境?》。 不过在这个过程中要注意两点: 1.在终端联网执行命令“sudo pip install –U selenium”如果失败了的话,可以尝试用命令“sudo easy_install selenium”来安装selenium; 2.安装好PyCharm后新建project,Interpreter一定要选对,默认给出的两个可选项很有可能是不对的。
百度测试部2015年10月份的面试题之——汉诺塔。 汉诺塔就是将一摞盘子从一个塔转移到另一个塔的游戏,中间有一个用来过度盘子的辅助塔。 百度百科在此。 游戏试玩在此。 用递归的思想解决汉诺塔问题就是分为两种情况: 第一种情况是只有一个盘子的情况,也就是最基本的情况,这种情况下,直接将该盘子从原始塔转移到目标塔即可胜利; 第二种情况是右n个盘子的情况,也就是普遍情况,这种情况下,要将除了最底下的那个盘子以外的(n-1)个盘子从原始塔转移到辅助塔,再把最底下的那个盘子(第n个盘子)从原始塔转移到目标塔,最后将辅助塔的(n-1)个盘子从辅助塔转移到目标塔。
百度测试部2015年10月份的面试题之——八皇后。 八皇后问题的介绍在此。以下是用递归思想实现八皇后-N皇后。 代码如下: using System;using System.Collections.
百度测试部2015年10月份的面试题之——字符串处理,找出最长的子串。 代码如下: private static string SelectNumberFromString(string input) { string result = ""; foreach (Match match in Regex.Matches(input, @"\d+"))//不要在匹配字符串的开头和结尾加上"^"和"$"。
刚才在QQ群里看到有人提问,如何实现退出百度登录问题。那么之所以会有这个问题,主要是因为这个元素,如下图所示,是无法直接定位到的: 经过研究发现,要想定位到这种元素,拢共分两步: 第一步,把鼠标移到能使目标元素显示在页面上的前置元素上; 第二步,通过xpath对目标标签元素进行定位。
转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ 你可以将普通的sites加入到你的site subscriptions中,前提是你需要有一个 Tenant Administration site,如果没有这个site,一切都别谈了。
转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ 对于SharePoint中已经是Record的Item,我们想要修改他的属性,这在UI界面是无法完成的: 这时需要通过Records.BypassLocks API来完成。
转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ 对Recorded Item动态调用OM Methods进行测试,界面如下: 输入Site的URL,File在SharePoint中的相对URL,并选择OM操作类型,点击Test进行测试。
让我们来练习一下字符串的分割~把话倒过来说: private void change_button_Click(object sender, EventArgs e) { var after_text = before_TextBox.
链表是由一系列节点串连起来组成的,每一个节点包括数值部分和指针部分,上一节点的指针部分指向下一节点的数值部分所在的位置。 在C语言中我们有两种方式来定义链表—— 1、定义结构体:来表示链表中的节点,节点中包含数值部分和指针部分。
上一篇讲过队列(queue),队列就像是居民楼里的垃圾管道,从楼道的垃圾管道的入口处将垃圾扔进去,清洁工会从一楼垃圾管道的出口处将垃圾拿走。每一层的垃圾通道入口与一楼的垃圾管道出口之间都形成了一个队列,先被扔进垃圾道里的垃圾会先到达垃圾通道的出口,即:先进先出。
继续读啊哈磊《啊哈!算法》感悟系列——队列 地铁售票处排队,先来的人先到队首先买完先走,后来的人排在队尾等候后买完后走。 想买票,必须排在队尾;买完票,只能从队首离开。 这种先进先出(First In First Out,FIFO),后进后出的线性队伍,就是我们说的——队列。
继续读啊哈磊算法有感系列,继续升华。上一篇是冒泡排序,在结尾总结了一下冒泡排序的缺点——时间复杂度O(N*N)太大。这一篇来说一下快速排序,快速排序可以在多数情况下克服冒泡排序的缺点(最坏的情况下和冒泡排序的时间复杂度一样)。