添加词语替换方法

This commit is contained in:
彭宇琦 2020-09-03 08:41:27 +08:00
parent 1fc2462c44
commit 140879a934
13 changed files with 248 additions and 69 deletions

View File

@ -31,15 +31,6 @@
</datas>
</sheet>
<!--
<sheet name="运行记录截图" freeze="0">
<column id="id" name="序号" wide="8" align="center"/>
<column id="class_name" name="类名" wide="25" align="left"/>
<column id="method_name" name="方法名" wide="15" align="left" link="运行记录|id"/>
<column id="screenshot" name="截图" wide="25" align="left" link="本地"/>
</sheet>
-->
<sheet name="错误记录" freeze="4">
<column id="id" name="序号" wide="8" align="center"/>
<column id="class_name" name="类名" wide="25" align="left"/>
@ -49,13 +40,4 @@
<column id="error_information" name="异常信息" wide="25" align="left" index='true' row_text='1'/>
<column id="screenshot_position" name="截图位置" wide="25" align="left" index='true' row_text='1'/>
</sheet>
<!--
<sheet name="错误记录截图" freeze="0">
<column id="id" name="序号" wide="8" align="center"/>
<column id="class_name" name="类名" wide="25" align="left"/>
<column id="method_name" name="方法名" wide="15" align="left" link="错误记录|id"/>
<column id="screenshot" name="截图" wide="25" align="left" link="本地"/>
</sheet>
-->
</templet>

View File

@ -231,7 +231,7 @@ public abstract class AbstractWriteExcel<T extends AbstractWriteExcel<T>> {
word = WORD_SIGN + word + WORD_SIGN;
replaceWordMap.put(word, replactWord);
}
/**
* 通过传入的字段id将对应的字段内容写入到用例最后的段落中字段id对应xml配置文件中的单元格标签的id属性
* 若需要使用替换的词语则需要使用#XX#进行标记如传参<br>

View File

@ -0,0 +1,22 @@
package pres.auxiliary.tool.file.excel;
/**
* <p><b>文件名</b>ReplactFunction.java</p>
* <p><b>用途</b>
* 用于根据替换词语设置相应的替换方法并在读取到该词语时执行设置方法的接口
* </p>
* <p><b>编码时间</b>2020年9月3日上午8:24:58</p>
* <p><b>修改时间</b>2020年9月3日上午8:24:58</p>
* @author 彭宇琦
* @version Ver1.0
*
*/
public interface ReplactFunction {
/**
* 根据替换的词语以及在该位置上的原始内容对词语所在位置内容进行替换
* @param replactWord 需要替换的词语
* @param value 原始内容
* @return 被替换的内容
*/
public String replact(String replactWord, String value);
}

View File

@ -22,10 +22,9 @@ import pres.auxiliary.work.selenium.xml.ReadXml;
/**
* <p><b>文件名</b>AbstractElement.java</p>
* <p><b>用途</b></p>
* <p><pre>
* 对辅助化测试工具selenium的获取元素代码进行的二次封装通过类中提供的方法以及配合相应存储元素的
* <p>对辅助化测试工具selenium的获取元素代码进行的二次封装通过类中提供的方法以及配合相应存储元素的
* xml文件以更简便的方式对页面元素进行获取减少编程时的代码量
* </pre></p>
* </p>
* <p><b>编码时间</b>2020年4月25日 下午4:18:37</p>
* <p><b>修改时间</b>2020年4月25日 下午4:18:37</p>
* @author 彭宇琦
@ -34,7 +33,7 @@ import pres.auxiliary.work.selenium.xml.ReadXml;
*/
public abstract class AbstractBy {
/**
* 用于存储浏览器的WebDriver对象设为静态保证所有的子类只使用一个WebDriver对象以避免造成WebDriver不正确导致的Bug
* 用于存储浏览器的WebDriver对象
*/
WebDriver driver;
/**
@ -70,7 +69,7 @@ public abstract class AbstractBy {
private long waitTime = 5;
/**
* 控制是否自动切换窗体由于通过Event类调用时会构造另一个事件类但每个类都应共享一个开关故需要加上static
* 控制是否自动切换窗体由于通过Event类调用时会构造另一个事件类
*/
boolean isAutoSwitchIframe = true;
@ -109,9 +108,9 @@ public abstract class AbstractBy {
}
/**
* 用于设置事件等待时间默认时间为5秒
* 用于设置元素等待时间默认时间为5秒
*
* @param waitTime 事件等待时间
* @param waitTime 元素等待时间
*/
public void setWaitTime(long waitTime) {
this.waitTime = waitTime;

View File

@ -76,14 +76,6 @@ public class DataListBy extends ListBy {
super(driver);
}
/**
* 通过{@link AbstractBy}对象对类进行构造将传入的AbstractBy类中的关键参数设置到当前类对象中
* @param brower {@link AbstractBy}对象
*/
public DataListBy(AbstractBy by) {
super(by);
}
/**
* 用于设置首行元素是否为标题元素
* @param isFristRowTitle 首行是否为标题元素

View File

@ -45,14 +45,6 @@ public abstract class ListBy extends MultiBy {
super(driver);
}
/**
* 通过{@link AbstractBy}对象对类进行构造将传入的AbstractBy类中的关键参数设置到当前类对象中
* @param brower {@link AbstractBy}对象
*/
public ListBy(AbstractBy by) {
super(by);
}
/**
* 返回列表名称对应的元素个数若该列未被获取则返回-1
* @param name 被获取的列名称

View File

@ -39,14 +39,6 @@ public abstract class MultiBy extends AbstractBy {
super(driver);
}
/**
* 通过{@link AbstractBy}对象对类进行构造将传入的AbstractBy类中的关键参数设置到当前类对象中
* @param brower {@link AbstractBy}对象
*/
public MultiBy(AbstractBy by) {
super(by);
}
/**
* 用于根据传入的元素在xml文件中的名称或者元素的定位内容添加元素由于该方法不指定元素的定位
* 方式若传入的参数不是xml元素且非xpath路径或绝对css路径时其识别效率较慢建议在该情况下

View File

@ -90,14 +90,6 @@ public class SelectBy extends MultiBy {
super(driver);
}
/**
* 通过{@link AbstractBy}对象对类进行构造将传入的AbstractBy类中的关键参数设置到当前类对象中
* @param brower {@link AbstractBy}对象
*/
public SelectBy(AbstractBy by) {
super(by);
}
/**
* 设置首个选项是否为不可选择的选项
* @param fristIsEmpty 首个选项是否为不可选择

View File

@ -15,7 +15,7 @@ import java.util.Date;
* @version Ver1.0
* @since JDK 12
*/
public class Log {
public class Log_Old {
/**
* 用于存储文件的保存路径
*/
@ -45,7 +45,7 @@ public class Log {
* 默认位置为C:\\AutoTestting\\TestResults\\<br/>
* 默认文件名为不带后缀TestResults
*/
public Log() {
public Log_Old() {
}
/**
@ -59,7 +59,7 @@ public class Log {
* @throws IncorrectDirectoryException
* 传入路径不合法时抛出的异常
*/
public Log(String savePath) {
public Log_Old(String savePath) {
setSavePath(savePath);
}
@ -73,7 +73,7 @@ public class Log {
* @throws IncorrectDirectoryException
* 传入的路径不合法或者文件名不合法时抛出的异常
*/
public Log(String savePath, String fileName) {
public Log_Old(String savePath, String fileName) {
setSavePath(savePath);
setFileName(fileName);
}

View File

@ -66,7 +66,7 @@ public class RecordTool {
/**
* Log类对象默认构造
*/
private static Log log = new Log(DEFAULT_FILE_PATH);
private static Log_Old log = new Log_Old(DEFAULT_FILE_PATH);
/**
* Record类对象默认构造
*/
@ -127,11 +127,11 @@ public class RecordTool {
private static boolean startRecord = false;
/**
* 返回{@link Log}类对象
* 返回{@link Log_Old}类对象
*
* @return {@link Log}类对象
* @return {@link Log_Old}类对象
*/
public static Log getLog() {
public static Log_Old getLog() {
return log;
}

View File

@ -0,0 +1,32 @@
package pres.auxiliary.work.selenium.tool;
import java.io.File;
/**
* <p><b>文件名</b>RunLog.java</p>
* <p><b>用途</b>
* 以纯文本的形式记录自动化运行过程
* </p>
* <p><b>编码时间</b>2020年9月3日上午8:02:37</p>
* <p><b>修改时间</b>2020年9月3日上午8:02:37</p>
* @author 彭宇琦
* @version Ver1.0
*
*/
public class RunLog {
/**
* 指向日志文件类对象
*/
private File logFile = null;
public RunLog() {
}
/**
* 构造对象并指定日志存放位置
* @param logFile 日志文件类对象
*/
public RunLog(File logFile) {
this.logFile = logFile;
}
}

File diff suppressed because one or more lines are too long

View File

@ -1,10 +1,10 @@
package test.javase;
import pres.auxiliary.work.selenium.tool.Log;
import pres.auxiliary.work.selenium.tool.Log_Old;
public class testResultFile {
public static void main(String[] args) {
Log trf = new Log();
Log_Old trf = new Log_Old();
trf.setSavePath("\\a");
}