51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 3321|回复: 7
打印 上一主题 下一主题

求助:回放selenium,其提示无法找到对象

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2013-7-9 17:53:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
环境:浏览器:IE8.0
编程工具:eclipse
系统界面技术:extjs

想要做的操作:实现下拉动作


脚本展示:
import static org.junit.Assert.*;
import Login.Login_Center;

import org.junit.Test;

import com.thoughtworks.selenium.DefaultSelenium;
import com.thoughtworks.selenium.Selenium;

import org.junit.Before;

import java.util.regex.Pattern;
public class Workflow_Portfolio extends Login_Center {


public static void main(String[] agrs){

Workflow_Portfolio w = new Workflow_Portfolio();

w.test();

w.workflow_port();

}

@Test

public void test(){



super.setUp();


}

public void workflow_port(){


selenium.click("xpath=//div[@class='ux-desktop-shortcut-icon workflow-manager-shortcut']");

try {

Thread.sleep(6000);//为了实现等待,可是觉得这个方法不好,还在找更好的方法

selenium.click("xpath=//input[@id='mixedportfoliocombo-1244-inputEl']");//运行到这个的时候,就会报错

                   } catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

运行脚本,报错信息ERROR: Element xpath=//input[@id='mixedportfoliocombo-1244-inputEl'] not found

用FireBug获取对象信息:

用Xpath能对位到该对象:


请大家多多帮忙,先谢谢了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    无聊
    2020-12-8 11:20
  • 签到天数: 605 天

    连续签到: 1 天

    [LV.9]测试副司令

    2#
    发表于 2013-7-10 12:46:03 | 只看该作者
    不用xpath呢?那个元素不是有id么?为什么不直接用id去找元素?而且貌似你xpath 找到的元素和你截图中的元素又差别啊?xpath找个的是个文本框,但是貌似你需要的元素是个下拉列表哎。。。。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
    发表于 2013-7-11 08:53:39 | 只看该作者
    我 猜测id是动态的,每次都不一样,所以回放会失败。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
     楼主| 发表于 2013-7-15 11:40:14 | 只看该作者
    恩,元老说的对,ID是变化的,因为界面技术用的是extjs
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
     楼主| 发表于 2013-7-15 11:43:21 | 只看该作者
    回复 2# joykao


       这个输入框和下拉按钮是一个组合,也就是说无论你是点击下拉按钮还是点击输入框,其都会出现下拉内容

    我有用程序去点击下拉按钮,可效果是既不报错,也没有实现下拉这个动作
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2020-12-8 11:20
  • 签到天数: 605 天

    连续签到: 1 天

    [LV.9]测试副司令

    6#
    发表于 2013-7-15 13:22:08 | 只看该作者
    回复 5# 秦菲
    好吧。。。。
    如果是因为id一直是动态变化的,导致识别不了对象,我建议你用Chrome 下的psychoXpath 插件,用short 方法找到最简化的路径就可以了,也许可以避开你的id一直变化的问题,或者可以用其它的方法比如cssSelector么?或者className吗?
    付插件地址:
    https://chrome.google.com/websto ... kmojlopmelmhgpbndog
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
     楼主| 发表于 2013-7-17 17:58:38 | 只看该作者
    好的,谢谢元老
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
     楼主| 发表于 2013-7-17 18:02:15 | 只看该作者
    回复 6# joykao

           
        其实我都有试过classname之类的来解决这个问题
    可是extjs恶心到连这些都是随时变的,伤心郁闷的我,现在决定用selenium2.0来试着解决问题

    十分谢谢元老哈
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-5-26 21:35 , Processed in 0.078219 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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