날짜/시간에 따라 앱에 많은 기능이 있습니다 (예 : "날짜가 x, y 인 경우). [NSDate date]를 사용하여 사용자의 현재 날짜/시간을 가져옵니다. 기능을 테스트 할 수 있습니다. 수동으로 내 아이폰에 날짜/시간을 변경하여하지만 시뮬레이터에서 더 빨리 테스트 할 수 있도록 프로그램 방식으로 현재 시간을 덮어 쓰는 방법이 있는지 궁금합니다.테스트 목적으로 앱 내에 iPhone 날짜/시간을 설정 하시겠습니까?
5
A
답변
3
NSDate 개체를 만들 수있는 날짜 ./당신이 원하는 시간 그냥이 방법을 "현재"시간을 얻을 수있는 방법을 통해 내부의 코드를 실행하거나 생산을위한 실제 날짜 또는 테스트를위한 당신의 선택의 어떤 날짜를 반환
0
dateByAddingTimeInterval을 :.
수신자에 대해 지정된 초 수로 설정된 새 NSDate 객체를 반환합니다.
- (id)dateByAddingTimeInterval:(NSTimeInterval)seconds
매개 변수 초 (초)는 수신기에 추가 할 수 있습니다. 리턴 된 오브젝트가 수신자 이전의 날짜를 지정하도록하려면 음의 값을 초 단위로 사용하십시오. 반환 값 수신기에 비해 초 단위로 설정된 새 NSDate 개체입니다. 리턴 된 날짜는 수신자의 표현과 다를 수 있습니다.
소스 : 문서 : P
5
그것을하는 또 다른 방법은 + (있는 NSDate *) 날짜의 사용자 지정 구현을 제공하는 것입니다. JRSwizzle을 사용하여이 클래스 메소드를 바꿀 수 있습니다. 있는 NSDate를위한 작은 카테고리하십시오 : 당신이 고정 된 날짜를 갖고 싶어 코드에서 다음
static NSTimeInterval seconds = 1300000000;
@interface NSDate (Fixed)
+ (NSDate *)fixedDate;
@end
@implementation NSDate (Fixed)
+ (NSDate *)fixedDate
{
return [NSDate dateWithTimeIntervalSince1970:seconds];
}
@end
하려면 다음을 수행하십시오이 밖으로
NSError *error;
[NSDate jr_swizzleClassMethod:@selector(date) withClassMethod:@selector(fixedDate) error:&error];
NSLog(@"Date:%@", [NSDate date]);
로그 인쇄 :
2011-09-01 11:35:27.844 tests[36597:10403] Date:2011-03-13 07:06:40 +0000
2
NSDate
에 카테고리를 만들고 +[NSDate date]
메서드를 다시 지정하십시오.
+ (instancetype)date
{
return [NSDate dateWithTimeIntervalSince1970:100000]; // Replace with any date you want
}
관련 문제
- 1. 쉘 스크립트는 테스트 목적으로
- 2. Windows에서 iphone 웹 앱 테스트
- 3. iPhone 4에 WAP 푸시 사용 설정 하시겠습니까?
- 4. iPhone - 앱 환경 설정 파일을 iPhone에 업로드하기
- 5. 테스트 목적으로 SSH 서버를 에뮬레이트하십시오.
- 6. 테스트 목적으로 현지 시간을 변경하는 방법은 무엇입니까?
- 7. 다른 번들로 iPhone 인앱 구매를 테스트 하시겠습니까?
- 8. Linux에서 iPhone SDK를 설정 하시겠습니까?
- 9. 앱의 최소 iPhone OS 버전을 설정 하시겠습니까?
- 10. 시뮬레이터가 아닌 실제 iPhone에서 iPhone 앱 테스트
- 11. 앱에서 iPhone 설정 변경
- 12. 성능을위한 Xcode 빌드 설정 - iPhone 앱
- 13. iPhone 설정 앱 및 키보드 컨트롤?
- 14. iPhone 앱 : 설정 파일은 어디에 저장해야합니까?
- 15. ipad 앱 배경을 프로그래밍 방식으로 설정 하시겠습니까?
- 16. 앱 내에 버전 관리 포함하기
- 17. iPhone 앱 : 앱당 개인 환경 설정 저장/저장
- 18. iphone 앱 정보 페이지
- 19. iPhone 앱 설치 중 코드를 실행 하시겠습니까?
- 20. iPhone 시뮬레이터에서 내 앱 사본을 인쇄 하시겠습니까?
- 21. (iphone) 앱 업데이트를 제출하여 키워드를 변경 하시겠습니까?
- 22. iPhone 앱 전화 번호를 사용하여 통신 하시겠습니까?
- 23. GPS 기반 iPhone 앱
- 24. 테스트 목적으로 Watir 질문이 클래스에 있습니다.
- 25. 레일에서 테스트 목적으로 before_save 필터를 재정의하십시오.
- 26. 테스트 목적으로 가짜 오픈 ID 공급자
- 27. Ipad에서 Iphone 앱 실행
- 28. 아이폰 웹 앱 개발 환경 설정?
- 29. 응용 프로그램에서 iPhone 설정 화면을 시작 하시겠습니까?
- 30. MonoTouch - 번들 설정 - iPhone
그는 테스트 프레임 워크 방법이 아니라 전체 앱에서 "롤 포워드"테스트를 수행하는 시스템 방법을 원한다고 생각합니다. 데스크톱 기기의 시스템 시간을 2010 년 1 월 1 일과 같은 것으로 설정하여 모바일 앱이 아닌지 테스트 할 때와 유사합니다. – TechZen