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

Java GUI Testing - JFCUnit Introduce

系統 2016 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條評論
主站蜘蛛池模板: 精品人人做人人爽久久久 | 999毛片| 色综合综合网 | 久久久综合久久 | 久久在线视频免费观看 | 欧美日韩在线观看免费 | 亚洲黄色在线观看视频 | 亚洲男人的天堂久久香蕉 | 夜夜夜爽| 久久99精品久久久久久黑人 | 92精品国产自产在线观看 | 奇米影视狠狠久久中文 | 欧美一区欧美二区 | www.亚洲| 欧美成人免费一区在线播放 | 五月天婷婷激情 | www.欧美精品 | 国产中的精品一区的 | 久久亚洲综合伊人 | 99精品国产福利在线观看 | 高清国产美女一级毛片 | 黄色在线视频网 | 国产精品6| 日本不卡免费新一区二区三区 | 欧美中文综合在线视频 | 91在线视频观看 | 成人一级黄色片 | 精品99久久 | 成人看的一级毛片 | 乱子伦xxx欧美 | 欧美xingai | 麻豆国产精品高中生视频 | 国产免费观看a大片的网站 国产免费精彩视频 | 天天干天天摸天天操 | 四虎精品免费国产成人 | 日本一线一区二区三区免费视频 | 伊人伊人伊人伊人 | 四虎影视在线永久免费看黄 | 国产高清在线a视频大全凹凸 | 日韩成人国产精品视频 | 国产精品女在线观看 |