51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 5585|回复: 3
打印 上一主题 下一主题

unable to resolve class reference junit/framework/AssertionFailedError

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2010-5-14 15:33:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
所写代码:

import com.thoughtworks.selenium.*;
import org.testng.annotations.*;
import static org.testng.Assert.*;
import java.util.regex.Pattern;
import com.thoughtworks.selenium.SeleneseTestBase;
//extends SeleneseTestNgHelper
public class swpu extends SeleneseTestNgHelper{
        public Selenium selenium = new DefaultSelenium("localhost", 8080, "*firefox", "http://www.swpu.edu.cn");  
        @Test public void testSwpu() throws Exception {
                selenium.open("/");
                selenium.clickAt("//div[@id='sasFlashFocus27']/embed[@id='27']", "");//媒体模块
                selenium.click("//div[@id='imglinkone']/a[1]/img");//主页的  学生世界
                clickAndSelectModalDialog("//div[@id='imglinkone']/a[1]/img");
                selenium.mouseMoveAt("//div[@id='menudiv']/ul/li[1]/a", "");//学生世界页面
                selenium.click("link=入学指南");
               
            
        }
        public void clickAndSelectModalDialog(String locator){   
                clickForModalDialog(locator);
                selenium.selectWindow("name=modal");   
        }   
       
        private void  clickForModalDialog(String locator){   
                String overrideShowModalDialogJs="if(selenium.browserbot.getCurrentWindow().showModalDialog){";   
                 
                overrideShowModalDialogJs += "selenium.browserbot.getCurrentWindow().showModalDialog = function( sURL, vArguments, sFeatures)";   
                 
                overrideShowModalDialogJs +="selenium.browserbot.getCurrentWindow().open(sURL, 'modal', sFeatures);";   

                overrideShowModalDialogJs += "};}";   
                //showModalDialog方法进行覆盖   
                selenium.getEval(overrideShowModalDialogJs);   
                selenium.openWindow("/page/yxc.shtml","modal");   
                selenium.waitForPopUp("modal","15000");   
                selenium.selectWindow("modal");
        }  
        public void  acceptModalValue(String locator,String[] values){  
            String overrideShowModalDialogJs="if(selenium.browserbot.getCurrentWindow().showModalDialog(){";  
                     
            overrideShowModalDialogJs += "selenium.browserbot.getCurrentWindow().showModalDialog = function( sURL, vArguments, sFeatures)";  
                     
                overrideShowModalDialogJs +="{ "+generateModalDialogReturnObject(values)+"return temp";  
                     
                overrideShowModalDialogJs += "};}";  
                //showModalDialog方法进行覆盖  
                selenium.getEval(overrideShowModalDialogJs);  
            selenium.click(locator);  
        }  
                    
        private String  generateModalDialogReturnObject (String[] values){  
            StringBuffer returnObject=new StringBuffer();  
                returnObject.append("var temp=new Array();");  
                for(int i=0;i<values.length;i++){
                        returnObject.append("temp["+i+"]='"+values+"';");  
                }  
                return returnObject.toString();
  
    }  
           /*//点击后弹出部门选择框的图片  
           String depChooseLocator="…/img";  
           <span style="color: rgb(0, 0, 0);">//点击并选中该弹出网页  
           clickAndSelectModalDialog(depChooseLocator);
           </span>  
           //执行部门树的操作  
            
           //获取该对话框要返回给父页面的值  
           String name = selenium.getEval("window.seltree.GetAllCheckText();");
           String id=selenium.getEval("window.seltree.GetAllNodeId();");  
          <span style="color: rgb(0, 0, 0);">//关闭部门选择对话框  
           closeModalDialog();
           </span>  
          //返回父页面  
          selenium.selectWindow("name=main95598");  
          //组装返回值  
          String[] returnValues=new String[2];
           returnValues[0]=name;  
           returnValues[1]=id;  
         //父页面获取对话框返回值  
          <span style="color: rgb(0, 0, 0);">
          acceptModalValue(depChooseLocator, returnValues);
          </span>  
       
       
        private void clickAndSelectModalDialog(String string) {
                // TODO Auto-generated method stub
        }
        */
}


控制台消息:
[Parser] Running:
  C:\Documents and Settings\pliu\Local Settings\Temp\testng-eclipse\testng-customsuite.xml

[[TestNGClassFinder]] Unable to read methods on class swpu - unable to resolve class reference junit/framework/AssertionFailedError
java.lang.NoClassDefFoundError: junit/framework/AssertionFailedError
        at java.lang.Class.getDeclaredMethods0(Native Method)
        at java.lang.Class.privateGetDeclaredMethods(Unknown Source)
        at java.lang.Class.privateGetPublicMethods(Unknown Source)
        at java.lang.Class.getMethods(Unknown Source)
        at org.testng.internal.TestNGClassFinder.<init>(TestNGClassFinder.java:59)
        at org.testng.TestRunner.initMethods(TestRunner.java:305)
        at org.testng.TestRunner.init(TestRunner.java:251)
        at org.testng.TestRunner.init(TestRunner.java:221)
        at org.testng.TestRunner.<init>(TestRunner.java:183)
        at org.testng.remote.RemoteTestNG$1.newTestRunner(RemoteTestNG.java:105)
        at org.testng.remote.RemoteTestNG$DelegatingTestRunnerFactory.newTestRunner(RemoteTestNG.java:158)
        at org.testng.SuiteRunner$ProxyTestRunnerFactory.newTestRunner(SuiteRunner.java:551)
        at org.testng.SuiteRunner.privateRun(SuiteRunner.java:241)
        at org.testng.SuiteRunner.run(SuiteRunner.java:195)
        at org.testng.TestNG.createAndRunSuiteRunners(TestNG.java:903)
        at org.testng.TestNG.runSuitesLocally(TestNG.java:872)
        at org.testng.TestNG.run(TestNG.java:780)
        at org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:75)
        at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:127)

===============================================
selenium_M123
Total tests run: 0, Failures: 0, Skips: 0
===============================================
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2010-5-14 15:36:42 | 只看该作者
高手些,快快帮忙啊!!
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2010-5-14 16:08:31 | 只看该作者
不太清楚你出错的问题,但是想知道一下,你在测试时候启动SeleniumServer了么?
不管是手动在命令行启动还是直接用代码启动,从你的代码里看不出这些信息。
java.lang.NoClassDefFoundError: junit/framework/AssertionFailedError从这个提示上看好像是不能加载junit下的AssertionFailedError这个类,好像。看看你的引用和jar包是否存在或是否在classpath里设置了。
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2010-5-14 16:46:44 | 只看该作者
额,,虽然不太明白为什么我的代码中没有引用junit4的东西却出现这个错误,但是刚刚在build path中加入了junit4的jar 包后就没有出现刚刚的问题了


运行的时候出现的另外的问题:
[Parser] Running:
  C:\Documents and Settings\pliu\Local Settings\Temp\testng-eclipse\testng-customsuite.xml

FAILED: testSwpu
com.thoughtworks.selenium.SeleniumException: Not found
        at com.thoughtworks.selenium.HttpCommandProcessor.throwAssertionFailureExceptionOrError(HttpCommandProcessor.java:97)
        at com.thoughtworks.selenium.HttpCommandProcessor.getCommandResponseAsString(HttpCommandProcessor.java:168)
        at com.thoughtworks.selenium.HttpCommandProcessor.executeCommandOnServlet(HttpCommandProcessor.java:104)
        at com.thoughtworks.selenium.HttpCommandProcessor.doCommand(HttpCommandProcessor.java:86)
        at com.thoughtworks.selenium.DefaultSelenium.open(DefaultSelenium.java:335)
        at swpu.testSwpu(swpu.java:11)
... Removed 22 stack frames

===============================================
    swpu
    Tests run: 1, Failures: 1, Skips: 0
===============================================


===============================================
selenium_XXX
Total tests run: 1, Failures: 1, Skips: 0
===============================================

[org.testng.internal.PoolService] Shutting down poolservice org.testng.internal.PoolService@1b273cc terminated:false
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-26 17:12 , Processed in 0.072207 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表