PyCharm IDE 5.0.4'ün içinde belirli bir ünite test fonksiyonu çalıştırın | tutuappapks.com
Birim testi için PyCharm kullanmaya çalışıyorum ( unittest) ve çalışmasını sağlayabiliyorum: test koşucusu, test durumlarının ve iç içe test fonksiyonlarının listesini güzelce gösterir.
Ancak, testler bir kez tespit edildikten sonra, belirli bir test fonksiyonunun (yeniden) çalıştırılmasının herhangi bir yolunu bulamıyorum: mevcut tek düğme testlerin tüm listesini yürütecek ve tek bir test fonksiyonuna sağ tıklayarak herhangi bir anlamlılık gösterilmeyecektir. bu amaç için eylem.
Tahmin edebileceğiniz gibi, amaç tek bir testin hatalarını ayıklamak olduğunda gereksiz yere uzun zaman alabilir.
Bunu nasıl başarabilirim? Örneğin Visual Studio'da mümkün ve temel bir özellik gibi görünüyor, bu yüzden bir şeyi kaçırmam gerektiğini düşünüyorum.
Bu kesinlikle mümkündür. Her zaman bireysel testler yapıyorum. Bunun için anahtar-board kısayolu aslında imlecinizi testin yöntem adı üzerinde yapmak ve ctrl-shift-r - idjaw
ctrl-shift-r "Değiştir" iletişim kutusunu açar, komut adını biliyor musunuz? Ayrıca, sınıfa veya test runner penceresindeki yönteme tıklıyor musunuz? Kaynak koddaki yöntemi tıklayamadığım için türetilmiş bir sınıf (TestDerived) tarafından alınmış, ancak bir temel sınıfta (TestAbstract, test yürütücüsünde görünmez) uygulanmıştır. - Erwin Mayer
Pycharm'ın hangi versiyonuna sahipsiniz? kodunuzu gönderebilir misiniz lütfen? bu yüzden benim pycharm'ımla test edebilirim - qvpham
Soru başlığında belirtildiği gibi PyCharm 5.0.4 kullanıyorum. Bir yayınladım burada gist. - Erwin Mayer
Intellij 2017'ye geçtikten sonra bunu da yaşamaya başladım. Çözünürlük yok, henüz ... - Kirby
PyCharm'ın son sürümleriyle 'sağ tıklama' seçeneğinin kullanılabilirliği aralıklı görünüyor.
Bir yerine geçmek için Edit Configurations... ve sınıfın adını ve yöntemini kendiniz yazın. Oldukça uygun olmasa bile benim için iyi çalıştı.
Teşekkürler, bu "Run ..." (Alt + Shift + F10) tarafından oluşturulan test çalışmalarını yürütmek için takip etti. - 101
Evet, özellikle de Yapılandırma Düzenlemelerinde "python testleri" altında bir "birim testi" seçeneği var. - eddys
Projenin varsayılan test çerçevesini kontrol edin ...
Muhtemelen varsayılan olarak 'uygun' olmaya alışkınsınızdır. Bu, imleci test tanımına koymamı ve o testi çalıştırmak için "SHIFT-CTRL-R" yi seçmemi sağlıyor.
Varsayılan, farklı davranış ve klavye kısayollarına sahip 'py.test' olarak değişmiş gibi görünüyor. OSX'deyim öylesine ymmv.
Tercihler -> Araçlar -> Python Entegre Araçlar -> "Varsayılan test koşucusu:"
Korku veren! Sadece pencerelerde, CTRL + SHIFT + F10 ile benim için çalıştı. - Karel Macek
Bu benim için çalıştı. Belirli bir yönteme sağ tıklayabildim ve sadece bunu çalıştırıp hata ayıklayabiliyordum. İmleci bu yönteme ve CTRL + SHIFT + F10'a manuel olarak koymalıyım (pycharm pro 2017.1.5 ubuntu 14.04) - Leonard Feehan
Testi gerçek sınıfta sağ tıklamayı denediniz mi? Tek testi oradan çalıştırmak mümkün olmalıdır. Bu uygun değilse yeniden yüklemeyi öneririm.
Test işlevi, TestDerived sınıfım tarafından miras alınan bir temel sınıfta bildirildiği ve uygulandığından bunu yapamıyorum (bu nedenle, sınama düzgün bir şekilde bulunurken, kodla 1'den 1'e eşleme yok). - Erwin Mayer
Pycharm 2017.2.3’ün altında:
değiştir default test runner(unittests) içinnosetests veya py.test), her ikisi de tamam.
sonra IDE tek koşabilir test function şimdi.
Aşağıdaki ekran görüntülerinin adımlarını izleyin.
1. ayarları değiştirin:
2. tek test fonksiyonunu çalıştırın:
3. tüm test fonksiyonlarını çalıştırın:
Teşekkürler, ama nasıl varsayılan test koşucusu çoklu test yöntemlerini desteklemiyor? - Tony Sepia
Pycharm 2018.1'de: yeniden başlat, mevcut çalıştırma configrations'lerini sil - aniden sağ tıkla, tek bir testi çalıştırmak için bir seçenek sağlar. : - /
InjectionConstructor'daki her parametreyi açıkça belirtmeden Dekoratör Kalıbı'nı Unity ile nasıl kullanırım JPA java kod üretimi Node.js içinde zlib kullanıldığında Yanlış Başlık Kontrolü Karakter Dizesi Olarak Uzun Sayılar Azure İşlevlerimde NuGet paketlerini nasıl kullanabilirim? Jquery'de bir işlev nasıl çalıştırılır Copy and Clone arasındaki fark nedir?