Chúng tôi có một vài nghìn chuỗi được bản địa hóa trong ứng dụng của chúng tôi. Tôi muốn tạo một bài kiểm tra đơn vị để lặp qua tất cả các khóa và tất cả các ngôn ngữ được hỗ trợ của chúng tôi để đảm bảo rằng mọi ngôn ngữ đều có mặt chính trong tệp resx (tiếng Anh) mặc định.Thử nghiệm đơn vị các chuỗi được bản địa hóa
Ý tưởng của tôi là sử dụng Reflection để lấy tất cả các khóa từ lớp Strings
, sau đó sử dụng ResourceManager
để so sánh giá trị được truy xuất cho mỗi khóa trong mọi ngôn ngữ và so sánh nó để đảm bảo nó không khớp với phiên bản tiếng Anh, nhưng tất nhiên, một số từ giống nhau trên nhiều ngôn ngữ.
Có cách nào để kiểm tra xem ResourceManager
có được giá trị của nó từ lắp ráp vệ tinh so với tệp tài nguyên mặc định không?
Ví dụ gọi:
string en = resourceManager.GetString("MyString", new CultureInfo("en"));
string es = resourceManager.GetString("MyString", new CultureInfo("es"));
//compare here
này là hoàn hảo, Michael! Cảm ơn bạn! –