2017-10-02 9 views
-3

私は本当にこのクラスやその一部を模擬する方法の助けが必要な学生です。私は一般的な方法を試みたが、それは動作していない。私は知識が不足していると思うし、どのように私を助けるためにこれらを嘲笑うかを知っている人からの助けが必要です。
私はすべてのそれはこのクラスを模擬するには?

package IT_chatbot; 

import java.util.Properties; 
import java.util.Scanner; 

import javax.mail.Message; 
import javax.mail.PasswordAuthentication; 
import javax.mail.Session; 
import javax.mail.Transport; 
import javax.mail.internet.InternetAddress; 
import javax.mail.internet.MimeMessage; 

public class request_remark { 
private static Scanner scan = new Scanner(System.in); 
public static String remark(String studentID){ 

    String courseCode=""; 

    System.out.println("Please enter course Code to be remarked:"); 
    courseCode = scan.nextLine(); 
    System.out.println("The message is sending..."); 


    Properties props = new Properties(); 
    props.put("mail.smtp.host", "smtp.gmail.com"); 
    props.put("mail.smtp.port", "587");  
    props.put("mail.smtp.auth", "true"); 
    props.put("mail.smtp.starttls.enable", "true"); 
    Session session = Session.getInstance(props,new javax.mail.Authenticator() 
    { 
     protected PasswordAuthentication getPasswordAuthentication() 
     { 
     return new PasswordAuthentication("[email protected]","2016mmm"); 
     } 
    }); 

    try 
    { 
    MimeMessage message = new MimeMessage(session); 
     message.setFrom(new InternetAddress("[email protected]")); 
     message.addRecipient(Message.RecipientType.TO,new InternetAddress("[email protected]")); 
     message.setSubject("Request a remark for a recent past of"+studentID); 
     StringBuffer emailMessage = new StringBuffer("Dear Hades"); 
     emailMessage.append("\r\n"); 
     emailMessage.append("We've recieved the remark request from student number " + studentID+ " subject " + courseCode); 
     emailMessage.append("\r\n"); 
     emailMessage.append("\r\n"); 
     emailMessage.append("\r\n"); 
     emailMessage.append("Best regard,"); 
     emailMessage.append("\r\n"); 
     emailMessage.append("\r\n"); 
     message.setText(emailMessage.toString()); 
     Transport.send(message); 


    } 
    catch(Exception e) 
    { 
    e.printStackTrace(); 
    } 
return courseCode; 
} 
} 

答えて

0

最初に行う方法は考えている、あなたのクラス名がRequestRemarkのようなものでなければなりません(規則に従ってください)。

あなたのクラスをモックとしたい場合は、ちょうどあなたのテストクラスに行くと同じような何かをしなければならない。

private RequestRemark mockRequestRemark = mock(RequestRemark.class);

しかし、あなたがしたいことは、あなたのメソッドをテストすることであれば、あなたが作成する必要がありますあなたのクラスのオブジェクト:

private RequestRemark requestRemark = new (RequestRemark);

、その後はあなたのクラスの各メソッドのためのテストを行います。例えば

@Test 
public void whenRemark_givenStudentID_thenWhatYouWantToAssert(){ 
    String id = ""; 
    requestMark.remark(id); 

    assertThat(yourAssertion); 
} 

PD:私はあなたのコード内の電子メールのパスワードを残したと思う...

+0

はその本物ではないメールを心配しないでください –

関連する問題