Tạo Dummy/Fake data bằng Faker

Trong testing thì tạo data test là 1 việc chắc chắn phải làm, trong automation test thì lại càng cần thiết khi mà phải tạo ra 1 số lượng lớn data. Với mỗi ngôn ngữ lại có rất nhiều cách để tạo data khác nhau, nhưng cách dễ nhất là dùng thư viện có sẵn. Hôm nay, mình sẽ giới thiệu 1 library của Java: Faker.

I. Cài đặt Faker

Homepage: https://github.com/DiUS/java-faker

Maven: khai báo trong pom.xml

<dependency>
    <groupId>com.github.javafaker</groupId>
    <artifactId>javafaker</artifactId>
    <version>0.18</version>
</dependency>

Gradle: khai báo trong build.gradle

dependencies {
    implementation 'com.github.javafaker:javafaker:0.18'
}

II. Sử dụng Faker

Một số loại common data mà Faker cung cấp:

@Test
    void test2() {
         Faker faker = new Faker();
        
        // Create full name
        System.out.println(faker.name().fullName());
        
        // Create cellPhone
        System.out.println(faker.phoneNumber().cellPhone());
        
        // Create emailAddress
        System.out.println(faker.internet().emailAddress());
        
        // Create job
        System.out.println(faker.job().position());
        
        // Create String in number format that has xxx digits
        System.out.println(faker.number().digits(18));
        
        // Create number between xxx and yyy
        System.out.println(faker.number().numberBetween(0, 100));
    }

Khi bạn khởi tạo faker object mà ko có tham số gì thì mặc định nó sẽ tiếng anh. Nếu bạn muốn data của bạn là tiếng Trung thì bạn có thể sử dụng.

Faker faker = new Faker(new Locale("zh-CN"));

Faker có 1 list các loại ngôn ngữ support, bạn xem thêm ở đây.

Ngoài ra Faker còn cung cấp rất nhiều loại data khác nhau nữa, các bạn có thể tìm hiểu thêm ở http://dius.github.io/java-faker/apidocs/index.html.

III. Kết luận

Hi vọng rằng với Faker thì các bạn làm automation sẽ không phải suy nghĩ quá nhiều đến việc tạo data test nữa, mình đang rất happy với nó 😀

2 thoughts on “Tạo Dummy/Fake data bằng Faker

  1. Pingback: [Bài 13] Tạo dummy data và sử dụng Unit Test | GiangTester Blog

  2. Pingback: Những việc bạn bắt buộc phải thành thạo khi làm API testing | GiangTester Blog

Leave a Reply

Your email address will not be published. Required fields are marked *