Hirdetés

Keresés

Új hozzászólás Aktív témák

  • PazsitZ
    addikt

    Spórolás az egyik cél, igen.

    Röviden: test automation fw-t csinálok. a page objectekben ott vannak a webelementek egyesével változókban. vannak olyan pagek ahol nem 1 van.. most mindegyikre van írva egy method ami visszadja, h isDisplayed-e. ha lenne vmilyen genericebb megoldásom, h nem kell mindre külön method, az sokat egyszerüsítene.

    Elvileg a WebElement-ben implementálva van az isDisplayed method.
    Na most ha adott esetben nincs meg az elem, akkor feltehetőleg hiba van.
    Ezeken waiter függvényekkel lehet javítni, ha egy elem instant nincs még jelen az oldalon. [link]
    Avagy ha egy boolean-re van szükség esetleg használható Helper osztály, ami lekezeli az NPE-t: [link]

  • Aethelstone
    addikt

    Sziasztok,

    szerintetek azt, h tudnám megoldani, h van egy classom több osztályszintű változóval, és szeretném egy metódussal a változó nevét átadva paraméterként megtudni, h ennek a változónak van-e értéke.
    Igazából a kivitelezés nem is számít, csak az a lényeg, h egy metódust szeretnék a classba a helyett, h minden adattagra lenne egy boolean metódusom.
    Előre is köszi

    Nos, azt láttam, hogy nem érkezett túl sok használható megoldás. Nekem személy szerint semmi bajom nincs a "gusztustalan" reflectionnal, ezt én tipikusan azzal oldanám meg. Egy lájtos for iteráció és pár, okosan elhelyezett if/then. Kb. tíz sor.

    Szerk: Még iteráció sem kell.

  • Szmeby
    tag

    Sziasztok,

    szerintetek azt, h tudnám megoldani, h van egy classom több osztályszintű változóval, és szeretném egy metódussal a változó nevét átadva paraméterként megtudni, h ennek a változónak van-e értéke.
    Igazából a kivitelezés nem is számít, csak az a lényeg, h egy metódust szeretnék a classba a helyett, h minden adattagra lenne egy boolean metódusom.
    Előre is köszi

    ...
    De léteznek olyan megoldások is, amelyek garantálják, hogy a változók értéke sose lehet null (védett konstruktor és setter), vagy olyanok, amelyekkel elkerülheted a nullpointert (Optional). Attól függ, mire van szükséged.

  • Sk8erPeter
    nagyúr

    Sziasztok,

    szerintetek azt, h tudnám megoldani, h van egy classom több osztályszintű változóval, és szeretném egy metódussal a változó nevét átadva paraméterként megtudni, h ennek a változónak van-e értéke.
    Igazából a kivitelezés nem is számít, csak az a lényeg, h egy metódust szeretnék a classba a helyett, h minden adattagra lenne egy boolean metódusom.
    Előre is köszi

    Ha jól értem, mit szeretnél, akkor azt gusztustalan reflectionös gányolással lehetne csak megoldani, úgyhogy inkább felejtős. Mi a célod ezzel? Spórolni szeretnél a gettereken/karaktereken, vagy mi?

    Ha az is jó, hogy kulcs-érték párok szerint tárolod őket, mert valamilyen módon közösen szeretnéd kezelni a változókat, és át is alakítható a mostani megvalósítás, akkor rakhatod őket valamilyen Map-implementációba vagy Hashtable-be String kulcsok szerint.

  • mobal
    nagyúr

    Sziasztok,

    szerintetek azt, h tudnám megoldani, h van egy classom több osztályszintű változóval, és szeretném egy metódussal a változó nevét átadva paraméterként megtudni, h ennek a változónak van-e értéke.
    Igazából a kivitelezés nem is számít, csak az a lényeg, h egy metódust szeretnék a classba a helyett, h minden adattagra lenne egy boolean metódusom.
    Előre is köszi

    Nem egyszerűbb ha megvizsgálod, hogy az értéke nem null-e?

  • Mukorka
    addikt

    Sziasztok,
    egy kis segítséget szeretnék kérni.
    Van az alábbi kódom, ami egy mysql db-hez csatlakozik, lekér egy kverit és azt visszaadja tömbként.
    A problémám, h egy futásidőalatt csak egyszer működik, második futásra
    java.sql.SQLException: After end of result set
    hibát kapok. Hol lehet a hiba?

    public class SQLConForDataProvider {

    private static int rowCount = 0;
    private static int columnCount = 0;
    private static String myData [][] = null;
    String query;

    public SQLConForDataProvider(String query) {
    this.query=query;
    }

    public static String[][] executeQuery(String query) {
    try
    {
    Class.forName("com.mysql.jdbc.Driver");
    Connection con = DriverManager.getConnection(Util.JDBCURL, Util.JDBCUSER, Util.JDBCPWD);

    Statement stmt = con.createStatement();
    ResultSet resultSet = stmt.executeQuery(query);

    ResultSetMetaData resultSet_metaData= resultSet.getMetaData();
    columnCount = resultSet_metaData.getColumnCount();

    while( resultSet.next() )
    rowCount++;

    myData = new String [rowCount][columnCount];
    resultSet.beforeFirst();

    for(int row=0; row<rowCount; row++)
    {
    resultSet.next();
    for(int col=1; col<=columnCount; col++)
    myData[row][col-1] = resultSet.getString(col);
    }

    stmt.close();
    con.close();
    }
    catch (Exception e)
    {
    e.printStackTrace();
    }
    return myData;
    }
    }

    Pl az hogy se a rowcount se a columncount nincs nullázva az fv hívás végén. Így meg tovább next-elsz a resultseten mint amennyi darab van benne -> jön az exception.

    A kódod jobb lenne ha az fv nem static lenne és a látszólag most fölösleges konstruktorban átadott query-vel dolgoznál és nem lenne static semmi se (Mondjuk a driver betöltése mehet static blockba). Így mindig működne az osztály ha új példányt hoznál létre minden query futtatáskor.

Új hozzászólás Aktív témák