Tôi cần giới thiệu gần đây ProGuard trên Android vì các vấn đề với Scala trên Android. Tôi cần ProGuard cho tính năng thu nhỏ của nó, loại bỏ các lớp được cho là không sử dụng. Tôi rất quan tâm đến tác động của việc loại bỏ các lớp học về khả năng kiểm tra.Với ProGuard, tác động đến chiến lược thử nghiệm là gì?
Khi viết tắt, tôi viết các bài kiểm tra đơn vị chạy trên máy chủ và kiểm tra chấp nhận chạy ứng dụng được tích hợp đầy đủ trên nền tảng Android.
Thông thường, tôi sẽ cảm thấy thoải mái với phạm vi phủ sóng thử nghiệm đơn vị tương đối hoàn chỉnh và phạm vi kiểm tra chấp nhận điểm chấp nhận. Tuy nhiên, cho rằng trong mã của tôi, tôi sử dụng tiêm phụ thuộc Guice rất nhiều, cho đến nay nó là kinh nghiệm của tôi rằng ProGuard loại bỏ mã theo cách mà tôi khó dự đoán. Bởi vì điều này rất có thể khiến tôi giới thiệu lỗi.
Điều này khiến tôi tin rằng tôi cần phải viết các bài kiểm tra chấp nhận/nền tảng để đạt được mức độ phù hợp đầy đủ vì tại bất kỳ thời điểm nào, có thể có một lớp bị thiếu.
Những người khác có trải nghiệm này không? Nếu vậy, chiến lược thử nghiệm của bạn là gì? Hoặc với kinh nghiệm, bạn có tự tin hơn rằng các lớp mà ProGuard đang loại bỏ thực sự không cần thiết?
điều này thường được báo trước, nhưng hãy cẩn thận về sự không nhất quán kỳ lạ khi sử dụng thư viện crappy, như SDK Android của Android và những thứ tương tự. Nó thường phá vỡ mọi thứ. –