The problem is that you have used $.ajax with an option type as POST and you have not decorated your action with POST.
So the solution is
[HttpPost]
public ActionResult test(int id)
{
if (Request.IsAjaxRequest())
{
TempData["page"] = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
return PartialView("ArticleList", ViewData["page"]);
}
return View();
}