Android - Test

Android çerçevesi, uygulamanızın tüm yönlerini test etmenize yardımcı olan entegre bir test çerçevesi içerir ve SDK araçları, test uygulamalarını kurmak ve çalıştırmak için araçlar içerir. Eclipse'de ADT ile çalışıyor veya komut satırından çalışıyor olsanız da, SDK araçları, hedeflediğiniz bir emülatör veya cihaz içinde testlerinizi ayarlamanıza ve çalıştırmanıza yardımcı olur.

Test Yapısı

Android'in derleme ve test araçları, test projelerinin standart bir test yapısı, test senaryosu sınıfları, test paketleri ve test projeleri şeklinde düzenlendiğini varsayar.

Android'de Test Araçları

Android uygulamalarını test etmek için kullanılabilecek birçok araç vardır. Bazıları Junit, Monkey gibi resmi, bazıları ise android uygulamalarını test etmek için kullanılabilecek üçüncü taraf araçlardır. Bu bölümde android uygulamalarını test etmek için bu iki aracı açıklayacağız.

  • JUnit
  • Monkey

JUnit

JUnit'i kullanabilirsiniz TestCaseAndroid API'lerini çağırmayan bir sınıf üzerinde yapılacak birim testi. TestCase ayrıca Android'e bağlı nesneleri test etmek için kullanabileceğiniz AndroidTestCase için temel sınıftır. JUnit çerçevesini sağlamanın yanı sıra AndroidTestCase, Android'e özgü kurulum, sökme ve yardımcı yöntemler sunar.

TestCase'i kullanmak için, sınıfınızı TestCase sınıfıyla genişletin ve setUp () yöntemini çağırın. Söz dizimi aşağıda verilmiştir -

public class MathTest extends TestCase {
   protected double fValue1;
   protected double fValue2;

   protected void setUp() {
      fValue1= 2.0;
      fValue2= 3.0;
   }
}

Her test için fikstürle etkileşime giren bir yöntem uygulayın. Bir boole ile assertTrue (String, boolean) çağırarak belirtilen iddialarla beklenen sonuçları doğrulayın.

public void testAdd() {
   double result= fValue1 + fValue2;
   assertTrue(result == 5.0);
}

Assert yöntemleri, bir testten beklediğiniz değerleri gerçek sonuçlarla karşılaştırır ve karşılaştırma başarısız olursa bir istisna oluşturur.

Yöntemler tanımlandıktan sonra onları çalıştırabilirsiniz. Söz dizimi aşağıda verilmiştir -

TestCase test= new MathTest("testAdd");
test.run();

Maymun

Genellikle "maymun" olarak adlandırılan UI / Uygulama Egzersizcisi Maymun, bir cihaza rastgele tuş vuruşları, dokunuşlar ve hareketler gönderen bir komut satırı aracıdır. Android Debug Bridge (adb) aracıyla çalıştırırsınız.

Bunu, uygulamanızı stres testi yapmak ve karşılaşılan hataları geri bildirmek için kullanırsınız. Aracı her seferinde aynı rasgele sayı tohumuyla çalıştırarak bir olay akışını tekrarlayabilirsiniz.

Maymun özellikleri

Maymun birçok özelliğe sahiptir, ancak hepsi bu dört kategoriyle özetlenebilir.

  • Temel yapılandırma seçenekleri
  • Operasyonel kısıtlamalar
  • Olay türleri ve sıklıkları
  • Hata ayıklama seçenekleri

Maymun Kullanımı

Monkey'i kullanmak için, bir komut istemi açın ve aşağıdaki dizine gidin.

android ->sdk ->platform-tools

Dizine girdikten sonra, cihazınızı PC'ye bağlayın ve aşağıdaki komutu çalıştırın.

adb shell monkey -p your.package.name -v 500

Bu komut, bu adımlara bölünebilir.

  • adb - Android Hata Ayıklama Köprüsü. Bir masaüstü veya dizüstü bilgisayardan Android telefonunuza bağlanmak ve komut göndermek için kullanılan bir araç.
  • kabuk - kabuk, komutlarımızı sistem komutlarına çeviren aygıtta yalnızca bir arabirimdir.
  • maymun - maymun test aracıdır.
  • v - v, ayrıntılı yöntem anlamına gelir.
  • 500- frekans konutu veya test için gönderilecek olay sayısıdır.

Bu aynı zamanda şekilde gösterilmektedir -

Yukarıdaki komutta, maymun aracını varsayılan android UI uygulamasında çalıştırırsınız. Şimdi uygulamanıza çalıştırmak için yapmanız gerekenler.

sonunda aşağıda gösterildiği gibi bitireceksin

Bu, aşağıdaki şekilde de gösterilmiştir. Bu komutu yazarak, aslında test için 500 rastgele olay oluşturuyorsunuz.

Misal

Aşağıdaki örnek, Test'in kullanımını göstermektedir. Maymun için kullanılabilecek temel bir uygulamayı kasalar.

Bu örneği denemek için, bunu gerçek bir cihazda çalıştırmanız ve ardından başlangıçta açıklanan maymun adımlarını izlemeniz gerekir.

Adımlar Açıklama
1 Com.tutorialspoint.myapplication paketi altında Android uygulaması oluşturmak için Android stüdyosunu kullanacaksınız.
2 Aktivite kodunu eklemek için src / MainActivity.java dosyasını değiştirin.
3 Layouta XML dosyasını değiştirin res / layout / activity_main.xml gerekirse herhangi bir GUI bileşeni ekleyin.
4 Aktivite kodunu eklemek için src / second.java dosyası oluşturun.
5 Düzen XML dosyasını değiştirin res / layout / view.xml gerekirse herhangi bir GUI bileşeni ekleyin.
6 Uygulamayı çalıştırın ve çalışan bir android cihaz seçin ve üzerine uygulamayı yükleyin ve sonuçları doğrulayın.

İşte içeriği MainActivity.java.

package com.tutorialspoint.myapplication;

import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {
   Button b1;
   @Override

   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      b1=(Button)findViewById(R.id.button);
   }

   public void button(View v){
      Intent in =new Intent(MainActivity.this,second.class);
      startActivity(in);
   }

}

İşte içeriği second.java.

package com.tutorialspoint.myapplication;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;

public class second extends Activity{
   @Override

   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.view);
      Button b1=(Button)findViewById(R.id.button2);

      b1.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View v) {
            Toast.makeText(second.this,"Thanks",Toast.LENGTH_SHORT).show();
         }
      });
   }
}

İşte içeriği activity_main.xml.

Aşağıdaki kodda abc tutorialspoint.com logosunu gösterir
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
   android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
   android:paddingRight="@dimen/activity_horizontal_margin"
   android:paddingTop="@dimen/activity_vertical_margin"
   android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">
   
   <TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="UI Animator Viewer"
      android:id="@+id/textView"
      android:textSize="25sp"
      android:layout_centerHorizontal="true" />
      
   <TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Tutorials point"
      android:id="@+id/textView2"
      android:layout_below="@+id/textView"
      android:layout_alignRight="@+id/textView"
      android:layout_alignEnd="@+id/textView"
      android:textColor="#ff36ff15"
      android:textIsSelectable="false"
      android:textSize="35dp" />
      
   <ImageView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/imageView"
      android:src="@drawable/abc"
      android:layout_below="@+id/textView2"
      android:layout_centerHorizontal="true" />
      
   <Button
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Button"
      android:onClick="button"
      android:id="@+id/button"
      android:layout_below="@+id/imageView"
      android:layout_centerHorizontal="true"
      android:layout_marginTop="100dp" />

</RelativeLayout>

İşte içeriği view.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="match_parent" android:layout_height="match_parent">
   
   <Button
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="button"
      android:id="@+id/button2"
      android:layout_centerVertical="true"
      android:layout_centerHorizontal="true" />
      
   <TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Tutorials point "
      android:id="@+id/textView3"
      android:textColor="#ff3aff22"
      android:textSize="35dp"
      android:layout_above="@+id/button2"
      android:layout_centerHorizontal="true"
      android:layout_marginBottom="90dp" />
      
</RelativeLayout>

İşte içeriği Strings.xml.

<resources>
   <string name="app_name">My Application</string>
</resources>

İşte içeriği AndroidManifest.xml.

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.tutorialspoint.myapplication" >
   
   <application
      android:allowBackup="true"
      android:icon="@mipmap/ic_launcher"
      android:label="@string/app_name"
      android:theme="@style/AppTheme" >
      
      <activity
         android:name=".MainActivity"
         android:label="@string/app_name" >
         
         <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
         </intent-filter>
         
      </activity>
      
      <activity android:name=".second"></activity>
      
   </application>
</manifest>

Android Test uygulamanızı çalıştırmayı deneyelim. Gerçek Android Mobil cihazınızı bilgisayarınıza bağladığınızı varsayıyorum. Uygulamayı Android stüdyosundan çalıştırmak için, projenizin etkinlik dosyalarından birini açın

ve araç çubuğundan Çalıştır simgesine tıklayın . Uygulamanızı başlatmadan önce, Android stüdyosu Android uygulamanızı çalıştırmak istediğiniz bir seçeneği seçmek için aşağıdaki pencereyi görüntüleyecektir.

Mobil cihazınızı bir seçenek olarak seçin ve ardından uygulama ekranını gösterecek olan mobil cihazınızı kontrol edin. Şimdi, bu uygulama üzerinde test yapmak için maymun bölümünün en üstünde belirtilen adımları izleyin.