How do I configure log4j to turn on logging for SWTBot?
Copy the file https://github.com/ketan/SWTBot/blob/master/org.eclipse.swtbot.swt.finder.test/src/log4j.xml to the src directory in your plugin. Ensure that the plugin's MANIFEST.MF contains the following lines, note the dependency on org.apache.log4j
Require-Bundle: org.eclipse.swtbot.go, org.apache.log4j Eclipse-RegisterBuddy: org.apache.log4j
log4j.xml配置文件如下:
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false"> <appender name="consoleAppender" class="org.apache.log4j.ConsoleAppender"> <param name="Target" value="System.out" /> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss.SSS} - %25t - %-5p - %30c{1} - (%C{1}.java:%L) - %m%n" /> </layout> </appender> <appender name="fileAppender" class="org.apache.log4j.FileAppender"> <param name="File" value="log/tbs_swtbot.log" /> <param name="Append" value="false" /> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss.SSS} - %25t - %-5p - %30c{1} - (%C{1}.java:%L) - %m%n" /> </layout> </appender> <appender name="asyncAppender" class="org.apache.log4j.AsyncAppender"> <!-- appender-ref ref="consoleAppender" / --> <appender-ref ref="fileAppender" /> </appender> <!-- don't log matchers, this is very high amount of chatter --> <category name="org.eclipse.swtbot.swt.finder.matchers"> <priority value="OFF" /> </category> <!-- don't log widget notification events, this is moderately high chatter --> <category name="org.eclipse.swtbot.swt.finder.widgets"> <priority value="OFF" /> </category> <category name="org.eclipse.swtbot.swt.finder.widgets"> <priority value="OFF" /> </category> <!-- don't log finders, this is moderate chatter --> <category name="org.eclipse.swtbot.swt.finder.finders"> <priority value="OFF" /> </category> <category name="org.eclipse.swtbot.swt.finder.keyboard"> <!-- set to a value higher than debug to turn on. --> <priority value="OFF" /> </category> <category name="org.eclipse.swtbot"> <priority value="ALL" /> </category> <root> <priority value="INFO" /> <appender-ref ref="consoleAppender" /> <appender-ref ref="fileAppender" /> </root> </log4j:configuration>
If you still get the message:
log4j:WARN No appenders could be found for logger (net.sf.swtbot.matcher.WidgetMatcherFactory$MenuMatcher). log4j:WARN Please initialize the log4j system properly.
Then there's something else not right. Drop an email on the mailing list.
在根类添加log4j初始化代码:
@BeforeClass public static void initSystem() throws Exception { DOMConfigurator.configure("./log4j.xml");//加载.xml文件 // PropertyConfigurator.configure("./log4j.properties"); bot = new SWTWorkbenchBot(); }
相关推荐
通过这些例子,你可以了解SWTBot的安装、配置,以及如何将其集成到你的开发环境中。同时,你还可以学习如何编写可重用的测试组件,提高测试效率。 在实际应用中,SWTBot不仅适用于开发者自测,也适合于持续集成环境...
import org.eclipse.swtbot.swt.finder.junit.SWTBotJunit4ClassRunner; import org.junit.Test; import org.junit.runner.RunWith; @RunWith(SWTBotJunit4ClassRunner.class) public class HelloWorldTest { @...
在SWTBot中,你可以使用查找机制来定位GUI元素。这可以通过Widget的属性,如标签、ID或位置来实现。例如,`bot.button("OK")` 将找到并返回一个标签为"OK"的按钮对象,然后可以调用其方法执行点击操作。 接下来,...
使用SWTBot,你可以编写测试脚本来模拟用户在Eclipse RCP应用中的各种操作。例如,你可以创建一个测试来打开特定的视图,点击某个按钮,检查结果是否符合预期。SWTBot提供了如`Bot.button()`、`Bot.menu()`和`Bot....
4. **断言和验证**:SWTBot提供了丰富的断言方法,可以用来验证控件的状态、内容或值是否符合预期,确保测试的准确性。 5. **测试套件和测试运行器**:SWTBot集成了JUnit,允许你组织测试用例成测试套件,并通过...
1. **安装与配置**:首先,开发者需要在Eclipse环境中安装SWTBot插件,这可以通过Eclipse的内置更新站点或下载离线包完成。安装后,需要导入相关的库到项目中,以便在测试代码中引用。 2. **基本组件操作**:SWTBot...
4. **验证**:在模拟操作后,SWTBot会进行预期结果的验证。这可能包括检查控件的状态变化、对话框的出现或消失、数据是否正确更新等。 5. **异常处理**:如果在执行测试过程中遇到问题,SWTBot会捕获异常并记录错误...
- 下载并配置SWTBOT。 - 准备待测试的应用程序(最好是基于SWT或JFace构建的)。 2. **编写测试脚本**: - 学习SWTBOT提供的API文档,理解如何模拟用户行为。 - 编写测试脚本来覆盖关键的GUI操作。 - 运行测试...
swtbot eclipse插件 测试界面
1. **环境搭建**:首先需要安装Eclipse IDE,并配置swtbot插件,设置好项目结构。 2. **编写测试脚本**:使用Java编写测试脚本,模拟用户的操作流程,如点击按钮、填写表单等。 3. **执行测试**:运行测试脚本,自动...
SWTBot是用于SWT / RCP应用程序的自动化和测试工具,具有记录和回放脚本的功能。 功能将包括基于文本的脚本,对测试套件的回放,报告和多线程回放的ant支持。
方案示例-swtbot-e4 结合使用场景和SWTBot来测试和记录Eclipse RCP e4示例应用程序的示例UI测试和Scenarioo集成可在plugins/org.scenarioo.example.e4.test/src/org/scenarioo/example/e4文件夹中找到。构建并运行...
NULL 博文链接:https://mwhgjava.iteye.com/blog/2257771
1. **安装和配置**:如何在已有的Eclipse环境中安装SWTBOT及其依赖,配置测试运行环境。 2. **基本概念**:了解SWTBOT的核心类,如`SWTBot`、`BotFactory`和`WidgetFinder`,以及它们在测试中的作用。 3. **选择和...
4. 在Eclipse中配置JUnit运行配置,指定SWTBot测试运行器。 5. 运行测试并根据结果迭代改进代码。 通过遵循这些步骤,开发者可以有效地对Eclipse JFace UI应用程序进行单元测试,确保代码的质量和稳定性。
1. **安装和配置**:首先,将SWTBot库添加到项目依赖中,通常是通过Maven或Gradle来管理。 2. **创建测试类**:使用JUnit或其他测试框架创建测试类,并导入SWTBot相关的库。 3. **初始化Bot**:在测试类中,通常会...
【标题】"pdi-ui-test"是一个专门针对Pentaho数据集成(PDI)的UI自动化测试框架,它利用了SWTBot库来实现对PDI用户界面的全面测试。 【描述】该项目"pdi-ui-test"的核心目标是提供一个高效、可靠的测试套件,确保...
在介绍完基础和高级主题之后,书中继续讨论了如何使用Maven Tycho构建插件、功能和更新站点,并使用SWTBot来自动化用户界面测试。这一部分对于希望通过自动化流程来提高开发效率和质量的开发者来说非常重要。 最后...