<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[deadgrape的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/deadgrape</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; deadgrape]]></copyright><item><title><![CDATA[SalesForce-第三篇-字段]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/130849652</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/130849652</guid><author>deadgrape</author><pubDate>Wed, 24 May 2023 16:29:41 +0800</pubDate><description><![CDATA[1. 常用字段类型：自动编号、文本、数字、日期、选项列表，有意思的是salesforce中，对选项列表的前端表现形式只有列表一种，没有常见的单选和多选按钮组。3.选好字段类型后，填写必要的字段名称和API，以及必要参数，字段就新建完成了。公式：类似Excel中的函数用法，多用来简单的计算和取值。2.特殊的字段类型：公式、主-详信息关系、外部查找关系、查找关系；在对象的基础上，可以新建字段，类似table的column。主-详信息关系：类似数据表的主表和子表关系。查找关系：类似关联关系，或者叫引用关系。]]></description><category></category></item><item><title><![CDATA[SalesForce-第二篇-对象]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/130684928</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/130684928</guid><author>deadgrape</author><pubDate>Mon, 15 May 2023 15:10:00 +0800</pubDate><description><![CDATA[在SalesForce中，对象类似数据表+OBJ的概念，对象分标准对象和自定义对象，标准的就是系统自带的，自定义对象就是自己创建的；新建对象主要就是输入一个中文名+一个英语的API名；常用项为：允许报表、允许搜索。]]></description><category></category></item><item><title><![CDATA[SalesForce-第一篇-概述]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/130201642</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/130201642</guid><author>deadgrape</author><pubDate>Mon, 17 Apr 2023 19:37:28 +0800</pubDate><description><![CDATA[3. Developer Console是Salesforce集成的IDE，类似一个简易的脚本运行「main」工具+SQL管理器，一般系统管理员，临时查查数据，或者运行代码片段使用；5. salesforce 整体运行在云服务器上，有点像一个可配置的WEB网站，不像传统软件项目需要搭建环境，相对快捷很多，只要充值就好，啊哈哈哈，RMB玩家的快乐~c. 在前端页面，点击这个”小齿轮“，就可以进入后台的设置页面；b. 配置详细页面，对应菜单的详细配置信息都会显示在这里；e. 与该数据的关联数据信息；]]></description><category></category></item><item><title><![CDATA[晃晃悠悠-测试转运维了]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/130011961</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/130011961</guid><author>deadgrape</author><pubDate>Wed, 12 Apr 2023 15:08:37 +0800</pubDate><description><![CDATA[最后的最后，引出作者想分享给大家的一个新鲜货色，也是作者最近一份工作所接触到的新技术，salesforce，一个快速实现CRM系统的三方平台，用法类似于市面上的泛微、YIGO这类二次开发的ERP搭建平台，有兴趣的小伙伴可以关注我之后分享的文章。先说说IT人员的35岁的那个坎，是真的，对IT人员来说是非常残酷且真实的，作者也做出了许多尝试，换公司，晋升，转岗，基本试了个遍，最后发现，再怎么折腾老天爷其实已经有所安排，可以总结为顺势而为四个字。]]></description><category></category></item><item><title><![CDATA[第十九篇【LOADRUNNER11的那些事儿】]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/51752791</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/51752791</guid><author>deadgrape</author><pubDate>Fri, 24 Jun 2016 14:55:08 +0800</pubDate><description><![CDATA[大家好，我又来唠唠嗑了。
今天闲着无聊，我就开和大家分享一下LOADRUNNER11的那些小猫腻；
首先是破解，这个网上百度，就不多说了，唯一注意的是先删注册表，后覆盖文件，不要玩反了，我这儿有个同事就玩反了，结果怎么都破解不了。
其次是录制，一般大家现在用的系统是WIN7，作者的公司就指定使用该系统，这个系统分64位和32位，LR11有个很好玩的事情，就是：64位的WIN7，LR只能用IE]]></description><category></category></item><item><title><![CDATA[第十八篇【测试数据准备的那些事儿--后话】]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/51205577</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/51205577</guid><author>deadgrape</author><pubDate>Fri, 22 Apr 2016 09:08:36 +0800</pubDate><description><![CDATA[亲爱的同志们~上次说的那个事情，作者本以为已经结束了，可是昨天晚上，因作者的坚持调查，发现事情，远远没有想象的那么简单。
好啦，让我开启柯南模式，给他家先来场景还原一下：
1. 作者制作了一个用登录的性能测试脚本，环境、数据都准备妥当。
2. 昨天作者在试运行的时候发现，脚本运行成功，但是没有日志信息。
3. 作者的需要验证的问题是，由于系统会在登录的时候写日志到数据库，在高并发下会发生死]]></description><category></category></item><item><title><![CDATA[第十七篇【测试数据准备的那些事儿】]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/51199314</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/51199314</guid><author>deadgrape</author><pubDate>Wed, 20 Apr 2016 14:44:42 +0800</pubDate><description><![CDATA[最近作者有个做性能的任务，任务本身很简单就是做一个登录的脚本。但是随着深入了解，发现这个数据准备却是一个棘手的事情。
场景是这样的，系统部署在一个内网，要登录系统必须先远程一个终端机，然后通过这个终端机再访问系统，然后这个终端机的配置并不优秀，CPU和内存基本处于快饱和状态，然后作者需要制作1500条左右的登录数据。
当然作者第一步就是想着如何偷懒，首先去数据看看有没有可用的数据，有么就直接可]]></description><category></category></item><item><title><![CDATA[第十六篇【自动化的实际应用情况】]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/51158898</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/51158898</guid><author>deadgrape</author><pubDate>Fri, 15 Apr 2016 11:22:31 +0800</pubDate><description><![CDATA[作者在自动化方面已经摸爬滚打了有一段时间了，发现自动化的用处是个潜移默化的过程，如果做过自动化的骚年们，一定会遇到这么一个问题，自动化的代码辛辛苦苦写好了，最后却是摆着展览的，也就变成了面子工程。我相信投身自动化事业的骚年们一定也有我的疑惑与彷徨，这么大的一门学科，怎么到了实际中就变成了一个DEMO，没有实际应用了，无法投入生产（没有赚钱的机会）。
后来作者，在天朝这片神奇土地的滋润下，慢慢领悟]]></description><category></category></item><item><title><![CDATA[APPIUM+JAVA实现对安卓APK的自动化测试----第十五篇【参数化和对象化】]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/50963820</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/50963820</guid><author>deadgrape</author><pubDate>Wed, 23 Mar 2016 15:43:07 +0800</pubDate><description><![CDATA[作者在百忙之中，抽出时间来和大家探讨自动化项目的参数化和对象化问题，我想做自动化的少年们一定都用过QTP，没用过的一边凉快去，作者的自动化框架也是借用了QTP的思路，参数化使用EXCEL【.xls】文件（要对EXCEL文件操作需要导入JXL.JAR包），对象化使用JAVA【.properties】文件，至于如何操作这些和书写代码，少年们可以去网上自己找，太多了，作者就不多说了。
作者要说的的是，]]></description><category></category></item><item><title><![CDATA[APPIUM+JAVA实现对安卓APK的自动化测试----第十四篇【mySelf框架】]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/50911601</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/50911601</guid><author>deadgrape</author><pubDate>Thu, 17 Mar 2016 10:39:44 +0800</pubDate><description><![CDATA[由于之前的种种问题，作者痛下决心，义无反顾，瞬间感觉时代在召唤。。。额~好吧不瞎哔哔了。
作者首先对APPIUM的一些基本函数做了封装，事例代码如下：
import java.util.concurrent.TimeUnit;

import com.mypublic.mywheel.log.Log4jlog;

import io.appium.java_client.android]]></description><category></category></item><item><title><![CDATA[APPIUM+JAVA实现对安卓APK的自动化测试----第十三篇【JUNIT框架】]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/50902266</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/50902266</guid><author>deadgrape</author><pubDate>Wed, 16 Mar 2016 09:35:59 +0800</pubDate><description><![CDATA[好吧~终于要讲框架了，首先我们先来个懒汉的方法，就是借用JUNIT框架来实现运行，作者用下来发现JUNIT对APPIUM的支持并不十分友善，但是用来教学到时很合适，来吧，作者开始气定神闲+豪火球了。
import io.appium.java_client.android.AndroidDriver;

import java.io.File;
import java.net.URL;]]></description><category></category></item><item><title><![CDATA[APPIUM+JAVA实现对安卓APK的自动化测试----第十二篇【操作模拟】]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/50857228</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/50857228</guid><author>deadgrape</author><pubDate>Fri, 11 Mar 2016 16:40:16 +0800</pubDate><description><![CDATA[啥都不说了~直接上代码：
        driver.findElementByAccessibilityId("using").click(); //点击操作
        driver.findElementByAccessibilityId("using").clear(); //清除操作，一般是有文字的信息的输入框
        driver.findElementByAcce]]></description><category></category></item><item><title><![CDATA[APPIUM+JAVA实现对安卓APK的自动化测试----第十一篇【定位元素】]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/50845048</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/50845048</guid><author>deadgrape</author><pubDate>Thu, 10 Mar 2016 11:25:33 +0800</pubDate><description><![CDATA[我们已经可以启动APPIUM的驱动了，然后首要解决的的问题自然是如何定位元素，这一篇的内容和之前的第七篇较为相似，我相信等大家自动化玩多了也一定会发现其中的奥妙，也会有万剑归宗的味道。
好了不废话了，直接上代码：
        1. driver.findElementByAccessibilityId(""); //常用，对应【CONTENT-DESC】属性
        2. dri]]></description><category></category></item><item><title><![CDATA[APPIUM+JAVA实现对安卓APK的自动化测试----第十篇【驱动的实现】]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/50833535</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/50833535</guid><author>deadgrape</author><pubDate>Wed, 09 Mar 2016 10:48:50 +0800</pubDate><description><![CDATA[嗯~我一直在纠结要不要告诉大家这个最关键的几行代码~虽然网络里很多，但是大部分都是有问题的，作者经过许多不眠之夜的辗转反侧，几经思量后，还是觉得要告诉大家一个可以实现的方法，哈哈哈，不要喷作者，作者就是小心思比较多而且比较猥琐，个人赶脚自己这么辛辛苦苦得来的成果怎么能这么容易告诉别人呢，嘿嘿嘿~
好了，作者直接给出代码（客观里边请）：
    public AndroidDriver driv]]></description><category></category></item><item><title><![CDATA[APPIUM+JAVA实现对安卓APK的自动化测试----第九篇【为什么】]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/50816915</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/50816915</guid><author>deadgrape</author><pubDate>Mon, 07 Mar 2016 10:13:18 +0800</pubDate><description><![CDATA[作者之前实现了APPIUM+RF的自动化测试，那为什么之后还要研究APPIUM+JAVA的呢？
作者是这么认为的：
1. 在用APPIUM+RF时发现，APPIUM的RF的LIBRARY有很多函数无法使用，而且运行时候很不稳定。
2. 作者一直在寻求如何将不稳定的程序变得稳定的方法，而RF得框架是搭建在Python之上的，换句话说，就是它只是一个既拿既用的实用工具。（当然如果你会Python]]></description><category></category></item><item><title><![CDATA[APPIUM+JAVA实现对安卓APK的自动化测试----第八篇【安装】]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/50781074</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/50781074</guid><author>deadgrape</author><pubDate>Wed, 02 Mar 2016 16:36:02 +0800</pubDate><description><![CDATA[一、软件清单：

1. JDK ，本人用的是1.7的版本;

2. SDK;

3. Appium;

4. Eclipse;

5. java-client-3.3.0.jar;

6. selenium-java-2.48.0.jar;

7. selenium-server-standalone-2.48.0.jar;

8. 一款安卓软件的APK，我用的是微]]></description><category></category></item><item><title><![CDATA[RobotFrameWork+APPIUM实现对安卓APK的自动化测试----第七篇【元素定位介绍】]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/50628113</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/50628113</guid><author>deadgrape</author><pubDate>Wed, 03 Feb 2016 10:13:59 +0800</pubDate><description><![CDATA[我想大家在玩自动化的时候最关心的一定是如何定位元素，因为元素定位不到后面的什么方法都实现不了。
那我们就直接看看APPIUMLIBRARY官方给出的信息：

Introduction

AppiumLibrary is a App testing library for Robot Framework.
Locating elements
All keywords in Appium]]></description><category></category></item><item><title><![CDATA[RobotFrameWork+APPIUM实现对安卓APK的自动化测试----第六篇【AppiumLibrary等待函数介绍】]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/50622441</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/50622441</guid><author>deadgrape</author><pubDate>Tue, 02 Feb 2016 10:20:47 +0800</pubDate><description><![CDATA[废话不多说，少年们请看下面。




Wait Until Page Contains
text, timeout=None, error=None

Waits until text appears on current page.
Fails if timeout expires before the text appears. See

introduction for]]></description><category></category></item><item><title><![CDATA[RobotFrameWork+APPIUM实现对安卓APK的自动化测试----第五篇【AppiumLibrary校验函数介绍】]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/50619050</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/50619050</guid><author>deadgrape</author><pubDate>Mon, 01 Feb 2016 15:55:40 +0800</pubDate><description><![CDATA[以上连作者先跪一下方便面，在上一篇中，作者遗漏了两个常用的函数：
1.长按




Long Press
locator

Long press the element





这个函数的作用为：长按一个控件


2.缩小（翻译为 “捏”）




Pinch
locator, percent=200%, steps=1

Pinch in o]]></description><category></category></item><item><title><![CDATA[RobotFrameWork+APPIUM实现对安卓APK的自动化测试----第四篇【AppiumLibrary实用函数介绍】]]></title><link>https://blog.youkuaiyun.com/deadgrape/article/details/50585677</link><guid>https://blog.youkuaiyun.com/deadgrape/article/details/50585677</guid><author>deadgrape</author><pubDate>Tue, 26 Jan 2016 10:32:11 +0800</pubDate><description><![CDATA[通过前几篇的讲述，我相信大家已经对RF+Appium的框架已经有所了解了。
接下来我告诉大家一些关于AppiumLibrary函数的用法。
1. 点击按钮：



Click Button
index_or_name

Click button





实例：Click Button index=0
作者通过实验发现在安卓手机应用测试中，name这个属性不起作用，]]></description><category></category></item></channel></rss>