diff --git a/erpnext/hr/doctype/employee_onboarding/test_employee_onboarding.py b/erpnext/hr/doctype/employee_onboarding/test_employee_onboarding.py
index 4220b48..9fe328b 100644
--- a/erpnext/hr/doctype/employee_onboarding/test_employee_onboarding.py
+++ b/erpnext/hr/doctype/employee_onboarding/test_employee_onboarding.py
@@ -11,13 +11,12 @@
 
 class TestEmployeeOnboarding(unittest.TestCase):
 	def test_employee_onboarding_incomplete_task(self):
-		if frappe.db.exists('Employee Onboarding', {'employee_name': 'Test Applicant'}):
-			return frappe.get_doc('Employee Onboarding', {'employee_name': 'Test Applicant'})
+		if frappe.db.exists('Employee Onboarding', {'employee_name': 'Test Researcher'}):
+			return frappe.get_doc('Employee Onboarding', {'employee_name': 'Test Researcher'})
 		_set_up()
 		applicant = get_job_applicant()
 		onboarding = frappe.new_doc('Employee Onboarding')
 		onboarding.job_applicant = applicant.name
-		onboarding.employee_name = 'Test Applicant'
 		onboarding.company = '_Test Company'
 		onboarding.designation = 'Researcher'
 		onboarding.append('activities', {
@@ -48,7 +47,7 @@
 		employee.date_of_birth = '1990-05-08'
 		employee.gender = 'Female'
 		employee.insert()
-		self.assertEqual(employee.employee_name, 'Test Applicant')
+		self.assertEqual(employee.employee_name, 'Test Researcher')
 
 def get_job_applicant():
 	if frappe.db.exists('Job Applicant', 'Test Researcher - test@researcher.com'):
@@ -63,4 +62,9 @@
 
 def _set_up():
 	for doctype in ["Employee Onboarding"]:
-		frappe.db.sql("delete from `tab{doctype}`".format(doctype=doctype))
\ No newline at end of file
+		frappe.db.sql("delete from `tab{doctype}`".format(doctype=doctype))
+
+	project = "Employee Onboarding : Test Researcher - test@researcher.com"
+	frappe.db.sql("delete from tabProject where name=%s", project)
+	frappe.db.sql("delete from tabTask where project=%s", project)
+	frappe.db.sql("delete from `tabProject Task` where parent=%s", project)
diff --git a/erpnext/hr/doctype/employee_separation/test_employee_separation.py b/erpnext/hr/doctype/employee_separation/test_employee_separation.py
index 6ae90df..4c3e566 100644
--- a/erpnext/hr/doctype/employee_separation/test_employee_separation.py
+++ b/erpnext/hr/doctype/employee_separation/test_employee_separation.py
@@ -26,4 +26,4 @@
 		self.assertEqual(separation.project, "")
 
 def get_employee():
-	return frappe.get_doc('Employee', {'employee_name': 'Test Applicant'})
\ No newline at end of file
+	return frappe.get_doc('Employee', {'employee_name': 'Test Researcher'})
\ No newline at end of file
diff --git a/erpnext/public/js/financial_statements.js b/erpnext/public/js/financial_statements.js
index 2fcdbb4..8648687 100644
--- a/erpnext/public/js/financial_statements.js
+++ b/erpnext/public/js/financial_statements.js
@@ -104,7 +104,7 @@
 				{ "value": "Half-Yearly", "label": __("Half-Yearly") },
 				{ "value": "Yearly", "label": __("Yearly") }
 			],
-			"default": "Monthly",
+			"default": "Yearly",
 			"reqd": 1
 		},
 		// Note:
