亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Java GUI Testing - JFCUnit Introduce

系統 1783 0

Java GUI Testing - JFCUnit Introduce

Background:

JFCUnit is an extension to the popular testing framework JUnit . This document assumes you are familiar with the usage of JUnit. If not, visit the main JUnit website where there are a number of links to some excellent resources on the subject.

* Environment setup & JFCUnit installing…

Download below jars: JUnit.jar 3.7 or greater, JFCUnit.jar, jakarta-regexp-1.5.jar

Install JRE1.4 or greater & Eclipse IDE

* A Sample Java GUI & JFCUnit Test

1. Deploy downloaded jars into your project class path, see following image

2. create java GUI sample codes

package com.fish.ui;

import java.awt.BorderLayout;

import java.awt.FlowLayout;

import javax.swing.JButton;

import javax.swing.JDialog;

import javax.swing.JLabel;

import javax.swing.JPanel;

import javax.swing.JTextField;

public class NewTestViewImpl extends JDialog implements TestView {

/**

*

*/

private static final long serialVersionUID = 1L;

private JTextField nameField ;

private JButton submitButton ;

private JButton cancelButton ;

private JLabel nameLabel ;

private boolean proceed = false ;

public NewTestViewImpl(Object object) {

// super(object);

initComponents();

layoutComponent();

}

private void initComponents() {

this . nameField = new JTextField(15);

this . submitButton = new JButton( "OK" );

this . cancelButton = new JButton( "Cancel" );

this . nameLabel = new JLabel( "Test Name:" );

}

private void layoutComponent() {

JPanel topPane = new JPanel();

topPane.add( nameLabel );

topPane.add( nameField );

JPanel buttonPane = new JPanel();

buttonPane.setLayout( new FlowLayout());

buttonPane.add( submitButton );

buttonPane.add( cancelButton );

getContentPane().add(topPane, BorderLayout. NORTH );

getContentPane().add(buttonPane, BorderLayout. LINE_END );

pack();

}

public String getTestName() {

return nameField .getText();

}

public void setTestName(String testName) {

this . nameField .setText(testName);

}

public void display() {

this .setVisible( true );

}

public boolean proceed() {

return proceed ;

}

public boolean cancelled() {

return ! proceed ;

}

public static void main(String[] args) {

new NewTestViewImpl( null ).setVisible( true );

}

public void setupJFCNames() {

nameField .setName( "testNameField" );

submitButton .setName( "SubmitButton" );

cancelButton .setName( "CancelButton" );

}

public void addListener(Listener listener) {

submitButton .addActionListener(listener);

cancelButton .addActionListener(listener);

}

public void closeView() {

}

public void openView() {

}

}

3. JFCUnit test codes

package com.fish.ui.test;

import javax.swing.JButton;

import javax.swing.JComponent;

import javax.swing.JTextField;

import com.fish.ui.NewTestViewImpl;

import junit.extensions.jfcunit.JFCTestCase;

import junit.extensions.jfcunit.JFCTestHelper;

import junit.extensions.jfcunit.TestHelper;

import junit.extensions.jfcunit.finder.NamedComponentFinder;

import junit.framework.Test;

import junit.framework.TestSuite;

public class NewTestViewImplTest extends JFCTestCase {

private NewTestViewImpl newTestViewImpl = null ;

private TestHelper helper = null ;

public NewTestViewImplTest(String name) {

super (name);

}

protected void setUp() throws Exception {

super .setUp();

helper = new JFCTestHelper();

newTestViewImpl = new NewTestViewImpl( null );

newTestViewImpl .setupJFCNames();

newTestViewImpl .setVisible( true );

System. out .println( "setup test case" );

}

protected void tearDown() throws Exception {

newTestViewImpl = null ;

TestHelper. cleanUp ( this );

super .tearDown();

System. out .println( "setup test case" );

}

public void testUI() {

System. out .println( "start testing ok button......" );

NamedComponentFinder finder = new NamedComponentFinder(

JComponent. class , "SubmitButton" );

JButton submitButton = (JButton) finder.find( newTemplateViewImpl , 0);

assertNotNull ( "Could not find the submit button" , submitButton);

finder = new NamedComponentFinder(

JComponent. class , "CancelButton" );

JButton CancelButton = (JButton) finder.find( newTemplateViewImpl , 0);

assertNotNull ( "Could not find the cancel button" , CancelButton);

finder = new NamedComponentFinder(

JComponent. class , "testNameField" );

JTextField testNameField = (JTextField) finder.find( newTestViewImpl , 0);

assertNotNull ( "Could not find the cancel button" , templateNameField);

newTestViewImpl .setTestName( "mTestName" );

assertEquals (testNameField.getText(), "mTestName " );

// System.out.println(text);

testNameField.setText( "" );

assertEquals ( "Test field is not null" , "" , newTestViewImpl .getTestName());

}

public static Test suite() {

return new TestSuite(NewTestViewImplTest. class );

}

public static void main(String args[]) {

junit.textui.TestRunner. run ( suite ());

}

}

4. Run JFCUnit test case using eclipse plug-in Junit Runner to load testcase and run.

More Information:

http://jfcunit.sourceforge.net/

Java GUI Testing - JFCUnit Introduce


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 成人午夜在线 | 九九精彩视频在线观看视频 | 国产视频一 | 深夜免费在线观看 | 在线日韩观看 | 国产精品视频久久 | 一级毛片成人午夜 | 久久99热国产这有精品 | 欧美v亚洲v国产v | 欧美日韩免费做爰视频 | 久久草在线观看视频 | 欧美成人精品久久精品 | 国内精品福利在线视频 | 成年人一级黄色片 | 97在线看片免费福利视频 | 精品伊人久久 | 日本在线观看一级高清片 | 高清一级做a爱过程免费视频 | 乱人伦中文字幕在线看 | 国产精品一区二区三 | 欧美午夜在线播放 | 水蜜桃久久 | 欧美日韩色黄大片在线视频 | 久月婷婷| 亚洲丶国产丶欧美一区二区三区 | 天天干天天色综合网 | 国产成人一区二区三区 | 美女被视频在线看九色 | 青草福利在线 | 四虎影视免费观看免费观看 | 伊人婷婷色香五月综合缴缴情 | 欧美成人午夜视频在线观看 | 亚洲国产成人精彩精品 | 国产成 人 综合 亚洲绿色 | 亚洲国产成人久久笫一页 | 日本一级特黄视频 | 很黄很色的免费视频 | 天天爱天天舔 | 97午夜影院 | 激情久久婷婷 | 国产精品久久现线拍久青草 |