2017-10-10 4 views
0

num1 * 12 = num2. Comment se fait-il quand je divise num2 par 11. Il passe toujours il n'échouera pas. Je fais égal total avec numonenum. Si je divise par 12 ce qui devrait être passé et quand je divise par 11 c'est toujours un laissez-passer. numonenum = 2,5 $, numtwonum = 30 $. numone et numtwo est un objet page.Appium Lorsque je divise par 11 c'est une passe où devrait échouer

public boolean num1num2() { 
    try{ 


    String num1 = numone.getText(); 
    String num2 = numtwo.getText(); 

    //Converting String to Integer to Divide Months 

    double numonenum = Integer.parseInt(num1); 
    double numtwonum = Integer.parseInt(num2); 

    double total = numtwonum/11; 
    System.out.println(total); 
    System.out.println(numonenum); 
    Assert.assertEquals(numonenum, total, "Total Matches numonenum"); 

    return true; 

     } catch(Exception e) { 

     } 
    return false; 
} 
    } 
+1

'numonenum = 2.5' - cela ne peut pas être vrai puisque vous attribuez un' int' ('Integer.parseInt (num1)') à 'numonenum'. Peut-être devriez-vous utiliser 'Double.parseDouble'. – Eran

Répondre

0

Le test ne sont pas arrivés à l'affirmation, Integer.parseInt("2.5"); jetteront NumberFormatException, qui sera pris par le bloc catch. Utiliser

+0

Merci comment arrondir au sein de .8 son un pass plus élevé un échec. –

+0

Le test continue quand vous divisez par 11 ne sais pas pourquoi? –

+0

Je reçois cette erreur quand je cours sans essayer d'attraper. java.lang.NumberFormatException: Pour la chaîne d'entrée: "$ 2.5" –