AndroidStudio 3.3 Could not find method testImplementation() Error

coolwolf / 15/01/2019

AndroidStudio 3.3 güncellemesi yaptıktan sonra günlerce bu sorunu çözmeye uğraştım. Android ve Java ile ilgili ne varsa silip tekrar kurduğum halde sürekli alttaki hatayı aldım.

Could not find method testImplementation() for arguments [junit:junit:4.12] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.

En sonunda testImplementation ibaresini testCompile olarak değiştirdim. Ardından androidTestImplementation ibarelerini de androidTestCompile yaptım.

Android Sudio’nun son sürümünü kullananlar zaten bilecektir, Implementation yerine Compile yazıldığında, Compile term is outdated and the message says “It will be removed at the end of 2018” hatası alınıyor.

2018 çoktan geçti 🙂

Compile yazarak sorunumu çözdüm. Ama bir süre sonra jeton düştü. Bu nalet olası Java’nın oldum olası Türkçe harflerle sorunu olmuştur. Implementation’un baş harfi I, halbuki bu Java küçük i’yi İ olarak istiyor. Bunun derdi bu olmasın. Şunu testİmplementation şeklinde yazayım bakalım ne olacak. Veeeee, tahmin ettiğim gibi oldu. Hatasız çalıştı.

Bu durumda, Türkçe Windows kullanılıyorsa (karakter setinde İ harfi kullanan diğer dillerde de geçerlidir bence), alttaki build.grade dosyasında bulunan alttaki kodu

testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

şu şekilde değiştirmek sorunu çözecektir:

    testİmplementation 'junit:junit:4.12'
    androidTestİmplementation 'com.android.support.test:runner:1.0.2'
    androidTestİmplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

Umarım başkalarının da günlerini ziyan etmemesinde katkım olmuştur.

Comments

  • krbyemre

    Bendede aynı sorun var sizin dediklerinizi de yaptım ama yine çözülmedi sorun.Yaklaşık 2 gündür araştırma yapıyorum ama bir çözüme ulaşamadım.Bu sorunu nasıl çözeceğime dair başka bir yol varmı acaba?

    • coolwolf

      implementation kelimesindeki büyük I harfini Türkçe büyük İ ile değiştirdiğimde benim sorunum çözüldü.
      Siz, büyük İ yazmanıza rağmen aynı hatayı mı alıyorsunuz ?

      • HHarun

        Fakat şuna dikkat etmek gerek, tamam türkçe büyük İ yapınca sorun çözülüyor veya çözülüyor gibi görünüyor ancak File-Project Structure-Dependencies kısmına baktığınızda bunların kullanım dışı kaldığını görüyorum yani düzelmiş gibi görünüyor ancak sadece pasifize ediyoruz, peki bu ne kadar sağlıklı ???

        • HHarun

          Yani benim anlayamadığım olay şu, bu harfi büyük harfle türkçe karakter olarak değiştirdiğimizde pasif mi oluyor cidden yani silmiş gibi mi oluyoruz yoksa işlevine devam ediyor mu bunu anlayamadım açıkçası bende de aynı sorun varda… biraz önce de baktım mesela dependencies kısmında junit:4.13-beta ve diğer test kısımlarıda var ancak başında sadece implementation yazıyorsun bu şekilde de oluyor ama aynı şey mi bilemedim

          • coolwolf

            Mail uyarıları devre dışı kalmış, yorumunuzu anca okudum. Özür.
            Bende modül devre dışı kalmadı. Proje normal derlendi.
            Java’nın Türkçe harflerle sorunu yıllardır çözülemedi nedense.
            Bu arada, sonraki Android Studio güncellemelerinde bu sorunu yaşamadım.

  • coolwolf

    test ve androidTest kısmı gereklidir. Sadece implementation yazmanız hata vermez ama test ve androidTest dizinlerinde çıktı üretmez. Programımızı test ettiğimiz emülatör bunlara ihtiyaç duyuyor.
    Bende, İ ile yazdığımda modüller devre dışı değil ve programımı da test edebiliyorum.
    Eğer Windows’umuzun dili Türkçe olmasaydı bu sorunu yaşamayacaktık büyük ihtimalle. JAVA ile daha önce de aynı sorunu yaşamıştım.

  • sahin

    3-4 ay oldu Android stdio yu açmıyalı bi açtım bi güncelledim o da ne hiçbir şey debug olmuyor bir de hata alıyorum. Dedim çattık neyse ki kardeşim güzelcene yazmış değiştirince çat dedi oldu eline koluna sağlık valla sabahleyin keyfim kaçacaktı günümü güzelleştirdin seninki de güzel olsun.

Submit a Comment